gpt4 book ai didi

ios - cellForItemAtIndexPath : is not called when using custom UICollectionViewLayout subclass

转载 作者:可可西里 更新时间:2023-11-01 03:54:41 24 4
gpt4 key购买 nike

当使用我的自定义 UICollectionViewLayout 子类时,cellForItemAtIndexPath: 没有被调用(我使用断点和调试输出进行了检查)。这就是我使用自定义布局的方式:

- (void)viewDidLoad
{
[super viewDidLoad];

DMSGridLayout* gridLayout = [[DMSGridLayout alloc] init];

// UICollectionViewFlowLayout* flow = [[UICollectionViewFlowLayout alloc] init];
// [flow setItemSize:CGSizeMake(150, 150)];

UICollectionView *collection = [[UICollectionView alloc] initWithFrame:self.view.bounds collectionViewLayout:gridLayout];
collection.delegate = self;
collection.dataSource = self;
self.collectionView = collection;

[self.view addSubview:self.collectionView];
[self.collectionView registerClass:[DMSGridCell class] forCellWithReuseIdentifier:@"CollectionCell"];
}

但是当我将上面的代码更改为使用 UICollectionViewFlowLayout 而不是我的自定义子类时,将调用 cellForItemAtIndexPath:

会不会是我的自定义布局子类中的一些代码阻止了 cellForItemAtIndexPath 被调用?

最佳答案

例如,如果布局不返回 Collection View 的任何大小,或布局对象的任何大小,则永远不会创建单元格。此外,布局对象中的框架必须在 Collection View 的可见区域内。

关于ios - cellForItemAtIndexPath : is not called when using custom UICollectionViewLayout subclass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19229059/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com