2016-05-14 5 views
0

Im используя следующий код для загрузки изображения из URL в поле зрения сбораUILabel не видно в CollectionView

-

(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *identifier = @"Cell"; 

    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath]; 



    UIImageView *recipeImageView = (UIImageView *)[cell viewWithTag:100]; 
    UILabel *recipeLabel = (UILabel *)[cell viewWithTag:200]; 


    if ([ImageArray count] >0){ 
    for(int i = 0; i < [ImageArray count]; i++) 
    { 
     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^(void) { 
      NSData *data0 = [NSData dataWithContentsOfURL: [NSURL URLWithString:[ImageArray objectAtIndex:indexPath.row]]]; 
      UIImage *image = [UIImage imageWithData: data0]; 

      dispatch_sync(dispatch_get_main_queue(), ^(void) { 
       recipeImageView.image = image; 
      }); 
     }); 
    } 
    }else{ 
     UILabel *title = [[UILabel alloc]initWithFrame:CGRectMake(0, 10, cell.bounds.size.width, 40)]; 
     title.text = @"No image record found"; 
     title.tag = 200; 
     [title setHidden:true]; 
     [cell.contentView addSubview:title]; 
    } 

    [spinnerShow stopAnimating]; 

    cell.layer.shouldRasterize = YES; 
    cell.layer.rasterizationScale = [UIScreen mainScreen].scale; 

    return cell; 
} 

Если ImageArray получил некоторый URL, если цикл будет выполняться. Else цикл else будет выполнен, где будет отображаться метка, в которой не будет найдена запись изображения. Но uilabel не становится видимым

+0

Метка не видна, потому что вы скрываете ее с помощью '[title setHidden: true];'. – rmaddy

+0

все еще его не видно даже после его удаления – Roger

ответ

0

Почему вы используете для цикла в cellForItemAtIndexPath? Этот метод вызывается для каждого элемента в UICollectionView. В противном случае добавьте лог или точку останова и проверьте, идет ли она туда или всегда происходит, если условие. Убедитесь, что вам нужно проверить количество массивов или проверить, существует ли изображение по URL-адресу?

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