gpt4 book ai didi

ios - cellForItemAtIndexPath 在强制滚动以使其可见后返回 nil

转载 作者:IT王子 更新时间:2023-10-29 08:13:15 27 4
gpt4 key购买 nike

所以我正在尝试编写一些代码,将 Collection View 滚动到某个索引,然后提取对单元格的引用并执行一些逻辑。但是我注意到,如果该单元格在滚动之前当前不可见,则 cellForItemAtIndexPath 调用将返回 nil,从而导致我的其余逻辑失败。

[_myView scrollToItemAtIndexPath:[NSIndexPath indexPathForItem:index 
inSection:0]
atScrollPosition:UICollectionViewScrollPositionTop
animated:NO];

//Tried with and without this line, thinking maybe this would trigger a redraw
[_myView reloadData];

//returns nil if cell was off-screen before scroll
UICollectionViewCell *cell =
[_myView cellForItemAtIndexPath:
[NSIndexPath indexPathForItem:index inSection:0]];

我是否必须调用一些其他方法来使 cellForItemAtIndexPath 返回由于紧接其前的滚动而突然进入视野的单元格的内容?

最佳答案

我现在想出了一个解决方案。如果我在调用 reloadData 之后立即调用 [myView layoutIfNeeded],但在尝试检索单元格之前一切正常。现在所有单元格都已缓存,因此访问速度很快,但我担心如果我必须从网络或内部数据库加载,这可能会给我带来糟糕的性能,但我们拭目以待。

关于ios - cellForItemAtIndexPath 在强制滚动以使其可见后返回 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21469459/

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