2016-05-13 4 views
0

Итак, у меня есть collectionView в tableViewCell.Коллекция Просмотр в TableViewCell как XIB

Все было хорошо, когда tableViewCell был в моей раскадровке.

Я решил переместить tableViewCell на свой собственный XIB, потому что раскадровка отставала. Теперь он дает ошибку ->

**** Нагрузочному приложение из-за неперехваченное исключение «NSInternalInconsistencyException», причина: «не мог из очереди вида в виде: UICollectionElementKindCell с идентификатором TagCellReview - должен зарегистрировать перо или класс для идентификатора или соединить ячейки с прототип в раскадровке '****

в CellForRowAtIndexPathTableView ->

 static NSString *CellIdentifier = @"FeedReviewCell"; 
     ReviewTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
      // Configure the cell... 
      if (cell == nil) { 
       NSArray *customCell = [[NSBundle mainBundle] loadNibNamed:@"ReviewTableViewCell" owner:self options:nil]; 
       cell = [customCell objectAtIndex:0]; 
       cell.backgroundColor=[UIColor clearColor]; 
       cell.selectionStyle = UITableViewCellSelectionStyleNone; 
      } 
     cell.tagsCollectionView.delegate = self; 
     cell.tagsCollectionView.dataSource = self; 

cellForItemAtIndexPath CollectionView ->

 TagsCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"TagCellReview" forIndexPath:indexPath]; 
     cell.tagLabel.text = [reviewSection.serviceTags objectAtIndex:indexPath.row]; 
     return cell; 

Любая идея, почему это происходит? Возможные решения?

+0

где вы создали свою ячейку коллекции? xib или раскадровка? – marosoaie

+0

Вы забыли установить класс в своем элементе ячейки коллекции Collection –

+0

. Мне кажется, вам нужно зарегистрировать класс для ячейки просмотра коллекции и/или зарегистрировать nib для ячейки представления коллекции, если вы создали ее в xib. – Mahesh

ответ

1

Я думаю, вам нужно зарегистрировать класс для ячейки просмотра коллекции, если ячейка находится в Storyboard и/или зарегистрировать nib для ячейки коллекции, если вы создали ячейку в xib.

//For Storyboard 

    [cell.collectionView registerClass:[TagsCollectionViewCell class] forCellWithReuseIdentifier:@"TagsCollectionViewCell"]; 

// register nib for XIB 
    [cell.collectionView registerNib:[UINib nibWithNibName:@"TagsCollectionViewCell" bundle:nil] forCellWithReuseIdentifier:@"TagsCollectionViewCell"]; 
Смежные вопросы