2016-09-26 4 views
0

Код представляет собой простой вид коллекции с кучей изображений Я запустил его, и Xcode не спорит ни о чем, кроме симулятора отображается черный экран после запуска приложения.black window in simulator -collection view

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section { 

    return recipePhotos.count; 
} 

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { 

    static NSString *identifier [email protected]"Cell"; 
    UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath]; 
    // Configure the cell 
    UIImageView * recipeImageView = (UIImageView *)[cell viewWithTag:100]; 
    recipeImageView.image=[UIImage imageNamed:[recipePhotos objectAtIndex:indexPath.row]]; 

    return cell; 
} 
+0

UIImage * recImage = [UIImage imageNamed: [recipePhotos objectAtIndex: indexPath.row]]; –

+0

сначала проверьте, не является ли это ненужным –

+0

, вы зарегистрировали ячейку в viewdidload? –

ответ

0
  1. Проверить вид сбора на выходе источника данных, может быть, это не было связано с контроллером?
  2. Check receipeImageView не ноль.
  3. Вы зарегистрировали UICollectionViewCell с идентификатором @ "Cell"?
+0

Да, но это было не о регистрации клеток. проблема решена путем комментирования одной строки, которую Xcode предоставляет по умолчанию. в любом случае, спасибо – Light

0

Если вы не хотите, черный фон, вы должны установить

collectionView.backgroundColor = [UIColor clearColor]; 

Затем вы должны зарегистрировать клетку

UINib *cellNib = [UINib nibWithNibName:@"yournibname" bundle:nil]; 
[collectionView registerNib:cellNib forCellWithReuseIdentifier:@"cell"]; 

Оба должны быть реализованы в методе viewDidLoad

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