1

我目前遇到的问题是,当用户滚动IGListKitpower时,滚动会在被调用UICollectionView时突然停止。listAdapter.performUpdates(:)

在不涉及太多细节的情况下,我们ListAdapterDataSource正在检查由Interstellar提供支持的可观察属性的集合视图对象的值。托管 的视图控制器ListAdapter也订阅此属性,并performUpdates(:)在值更改时发出 a 。

我使用与IGListKit 示例scrollViewWillEndDragging(:)类似的方法,在用户接近列表末尾时触发页面获取网络操作。该操作在完成时使用最新项目更新可观察属性。

我的问题是,在网络操作完成并更新可观察属性(从而触发 a performUpdates(:))的同一时刻,滚动停止。即使旧对象数据集与新对象数据集完全相同(通过手动差异确认),当没有更多结果/页面要获取时,也会发生这种情况,

关于如何调试这个的任何建议?也许某些方法上的某个符号断点可以指示是什么导致UICollectionView' 的滚动停止?

4

1 回答 1

0

不确定它对你来说仍然是真实的@tannos,但如果有任何事情会面临与你和我一样的问题,我会把它留在这里。正如@danqing 在评论中提到的那样,这是因为UIRefreshControl.

所以,像

if refreshControl.isRefreshing {
    refreshControl.endRefreshing()
}

可以节省你的一天:)

于 2021-10-15T14:39:25.390 回答