vir*_*ndh 17 ios uicollectionview uicollectionviewcell
正如标题所示,我有一个UICollectionView与UIViewControllerIB通过的联系.我有一个UICollectionView叫做的子类imageCell.在viewcontroller viewDidLoad方法中,我注册了这样的类:
CGRect collectionViewRect = CGRectMake(384, 60, 728, 924);
UICollectionViewFlowLayout *flow = [[UICollectionViewFlowLayout alloc] init];
imageCollectionView = [[UICollectionView alloc] initWithFrame:collectionViewRect collectionViewLayout:flow];
[imageCollectionView registerClass:[imageCell class] forCellWithReuseIdentifier:@"Cell"];
imageCollectionView.delegate = self;
imageCollectionView.dataSource = self;
Run Code Online (Sandbox Code Playgroud)
然后我调用一个名为getPhotosin viewDidAppear(因为UI原因)的方法,该方法从服务中获取照片,然后我[imagCcollectionView reloadData];在里面调用getPhotos.
然后在cellForItemAtIndexPath我做以下事情:
imageCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
GRKAlbum *album = [albums objectAtIndex:indexPath.item];
cell.titleLabel.text = album.name;
return cell;
Run Code Online (Sandbox Code Playgroud)
我知道我在这里做错了什么,因为这个方法被调用而cell不是nil,也不是album.
所以,当我运行所有这些代码时,会UICollectionView出现,但没有任何内容.我只能看到背景颜色collectionView.任何帮助都将非常感激.
注意:我没有为我创建一个XIB,imageCell而我正在使用Storyboard.
Ani*_*ese 85
有一些方法可以调试这种情况.
注册UICollectionViewCell类而不是customCell并设置单元格的背景颜色cellForItem...
如果单元格出现在第一步中,请尝试使用您自己的单元格类并设置其背景
你在使用故事板吗?然后..
您不必为集合视图注册任何单元格.您可以使用原型单元格,只需为单元格提供正确的ID.您可以在原型单元格中设计所有内容.在所有情况下可能不需要自定义类.
rde*_*mar 45
如果您在故事板中创建了单元格,则只需删除寄存器类语句.如果您在故事板中创建单元格,则不需要注册任何内容(对于集合视图或表视图)(事实上,如果您这样做,它会搞砸了).您唯一需要做的就是确保在IB中设置标识符.
Bhu*_*nVU 16
我registercell用下面的线代替传统的线路修复了同样的问题
[self.collection registerNib:[UINib nibWithNibName:@"nibname" bundle:nil] forCellWithReuseIdentifier:identifier];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31507 次 |
| 最近记录: |