Я извлекаю NSData
с URL-адреса, затем я пытаюсь установить его на изображение. В консоли он возвращает null, однако, когда я запрашиваю данные и снова устанавливаю изображение , изображение, чем загружает?UIImage возвращает null первый раз, до перезагрузки?
Зачем это нужно сделать дважды для его загрузки?
Это два метода, которые я использую для получения изображения.
-(void)getUserPicture {
//Grab and upload user profile picture
imageData = [[NSMutableData alloc] init]; // the image will be loaded in here
NSString *urlString = [NSString stringWithFormat:@"http://graph.facebook.com/%@/picture?type=large", userId];
NSMutableURLRequest *urlRequest =
[NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlString]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:3];
NSURLConnection *urlConnection = [[NSURLConnection alloc] initWithRequest:urlRequest
delegate:self];
if (!urlConnection) NSLog(@"Failed to download picture");
}
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
userPicture = [UIImage imageWithData:data];
NSLog(@"%@",userPicture); //returns null in console first time, until reloaded???
}
Я подумал о том, что, но как я могу получить 'NSData' от этого метода? его доступно только в 'connection: didReceiveData:' правильно? – Josh
Я реализовал ваши методы, но я также добавил в 'NSLog' в' connectionDidFinishLoading', и он мгновенно возвращает nil при запуске? Почему это происходит? – Josh