2016-07-25 2 views
1

Я хочу, чтобы изображение массива загружалось в виде одного изображения (изображения загружаются один за другим как слайдер изображения). Я получаю массив изображений с помощью веб-сервера (JSON). Я пытаюсь много раз, но мое приложение разбилось, и многие ошибки времени показывают. Пожалуйста, помогите мне, как создать слайдер изображения. СпасибоКак отобразить загрузку массива в UIImageView

Моего код

-(void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
NSError *error; 

NSLog(@"Error in receiving data %@",error); 
NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error]; 
NSLog(@"response data %@",json); 

NSArray* results = [json objectForKey:@"status"]; 
NSArray *imagearray = [results valueForKey:@"slider_image_path"]; 
NSLog(@"images %@",imagearray); 

self.imageview.animationImages = imagearray; 
    _imageview.animationDuration = 10; 
    _imageview.animationRepeatCount = 0; 
    [_imageview startAnimating]; 
    } 
+0

где и хотите загрузить –

+0

я хочу ползунок изображения –

+0

Какую ошибку вы получаете в то время как приложение аварии? Вы проверили элементы imagearray? –

ответ

1

Вы получаете URL изображений с сервера, а не сами изображения, поэтому imagearray представляет собой набор URL-адреса прямо сейчас, и вы не можете напрямую установить сам URL к анимации. Итак, что вам нужно сделать дальше, вам нужно будет загрузить изображения с URL-адресов изображений, а затем установить массив (который будет содержать экземпляры UIImage) для свойства animationImages изображений.

Update

-(void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
    NSError *error; 

    NSLog(@"Error in receiving data %@",error); 
    NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error]; 
    NSLog(@"response data %@",json); 

    NSArray* results = [json objectForKey:@"status"]; 
    NSArray *imageUrlArray = [results valueForKey:@"slider_image_path"]; 
    NSLog(@"images %@",imagearray); 

    NSMutableArray *arrayImages = [[NSMutableArray alloc] init]; 

    //Updated for loop, previously in hurry i was setting url string as a url to the URLWithString method, now its working fine. 
    for (NSString *strImageUrl in imageUrlArray) { 
     [arrayImages addObject:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:strImageUrl]]]]; 
    } 

    self.imageview.animationImages = arrayImages; 
    _imageview.animationDuration = 10; 
    _imageview.animationRepeatCount = 0; 
    [_imageview startAnimating]; 
} 
+0

См. Обновленный ответ. –

+0

Если вы говорите о времени, затрачиваемом на загрузку изображений с сервера, это зависит от скорости интернета, так как изображения, которые вы загружаете, имеют большой размер, это определенно займет некоторое время. До тех пор, что вы можете сделать, вы можете показать индикатор активности пользователю до загрузки изображений. –

+0

Bro я не могу помочь вам по очереди или написать весь код для вас, вам также нужно будет приложить некоторые усилия. –

Смежные вопросы