TableViewCell中的集合视图为XIB

时间:2016-05-13 07:32:09

标签: ios objective-c iphone xcode uistoryboard

所以我在tableViewCell中有一个collectionView。

当tableViewCell在我的Storyboard中时,一切正常。

我决定将tableViewCell移动到自己的XIB,因为故事板滞后了。现在它给出错误 - >

  

****由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法使视图出列   种类:带标识符TagCellReview的UICollectionElementKindCell -   必须为标识符注册一个笔尖或类或连接一个   故事板中的原型单元'****

在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;

知道为什么会这样吗?可能的解决方案?

1 个答案:

答案 0 :(得分:1)

如果您在xib中设计了单元格,我认为如果单元格在Storyboard中,则需要为集合视图单元格注册类和/或为集合视图单元格注册nib。

//For Storyboard

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

// register nib for XIB
    [cell.collectionView registerNib:[UINib nibWithNibName:@"TagsCollectionViewCell" bundle:nil] forCellWithReuseIdentifier:@"TagsCollectionViewCell"];