奇怪的索引行为UICollectionView

时间:2019-07-26 21:21:17

标签: ios swift

我有一个包含64个项目的UICollectionView。用户之前可以点击屏幕上的各种选项,我的目标是将此轮播加载到用户选择的索引/项目中。

我们同时在屏幕上显示3个项目,并且将它们的选择居中显示。

因此,如果用户从上一个屏幕中选择项目8,则在我们按下按钮时,我希望收藏视图位于项目8上,他们仍然会在侧面屏幕上看到7和9。

所有这些都有效,但是出现了一些奇怪的分页行为。

viewDidAppear中:

carousel.selectItem(at: IndexPath(row: selectedId, section: 0), animated: false, scrollPosition: .centeredHorizontally)
carousel.reloadData()

但是当我向左或向右翻页时,它似乎总是位于第一个索引上,而不是用户选择的那个索引上。

关于我在这里做错了什么的任何线索吗?谢谢

1 个答案:

答案 0 :(得分:0)

是否可能需要在选择项目之前重新加载数据。
也可以尝试: scrollToItem(at: selectedItemIndexPath, at: .center, animated: false)