我已经使用了UICollectionViewController
,我试图添加图像到我的集合视图单元格,但UICollectionView
方法没有被调用。
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier, for: indexPath as IndexPath) as! CircularCollectionViewCell
cell.imageName = images[indexPath.row]
return cell
}
5条答案
按热度按时间8qgya5xd1#
提示:CellforRow at:indexPath 方法不会被调用,如果collectionView的大小或位置在重载之前发生了变化,请确保您没有这样做。
vuv7lop32#
如果不向集合视图提供内容大小信息,则不会调用
cellForItemAtIndexPath
。您可以按如下所示设置
collectionViewLayout
:rsaldnfx3#
如果UICollectionView的内容大小不正确,则不会调用cellForItemAt。
我有两个解决办法。
1.在重新加载collectionView之前调用collectionView.layoutIfneeded()。
1.在重新加载collectionView之前,在主线程中添加collectionViewLayout,这有助于调整内容大小。
gg0vcinb4#
pcrecxhr5#
在
UICollectionViewController
中,默认情况下设置delegate
和dataSource
子类。并且默认情况下在数据源方法中使用0。您需要更改这些值。