问题
在iOS 14环境下, UICollectionView的 如下方法失效
- (void)scrollToItemAtIndexPath:(NSIndexPath *)indexPath atScrollPosition:(UICollectionViewScrollPosition)scrollPosition animated:(BOOL)animated;
问题复现
- iPad iOS 14环境, 页面为横向Collectionview
- cell满屏, 左右整页滑动
原因:
未知, 这里暂时只给出解决办法, 欢迎大家讨论
解决办法:
放弃scrollToItemAtIndexPath方案, 采用如下方案:
- 获取目标的位置
- 调用
setContentOffset:animation方法, 并且设置动画
// 获取位置
UICollectionViewLayoutAttributes *layoutAttributes = [self.collectionView.collectionViewLayout layoutAttributesForItemAtIndexPath:indexPath];
// 滑动
[self.collectionView setContentOffset:layoutAttributes.frame.origin animated:YES];
博客指出在iOS 14环境下,UICollectionView的特定方法失效。在iPad iOS 14横向Collectionview页面,cell满屏且左右整页滑动时问题复现。目前原因未知,给出的解决办法是放弃原方案,获取目标位置并调用方法,同时设置动画。
2696

被折叠的 条评论
为什么被折叠?



