繁体   English   中英

UICollectionView scrollToItem 在.rightToLeft 应用程序中不起作用

[英]UICollectionView scrollToItem not working in .rightToLeft app

我有一个使用 UICollectionView (collectionView) 并使用 scrollToItem 在不同单元格之间移动的应用程序。 当语言为.leftToRight 时,它可以正常工作。 当语言为.rightToLeft 时它不起作用。

在特定情况下,我只有两个单元格(曾经有更多,但从应用程序中删除了一些东西)。 所以应该很简单。

我可以看到,在某些情况下调用 scrollToItem 后, cellForItemAt 被新索引调用,只是在同一刷新周期中立即被旧索引调用。 在某些情况下,它永远不会使用新索引调用。

我尝试了各种方法来操纵 UICollectionView(包括 collectionFlowLayout)的 rightToLeft 行为。

最后对我有用的是:

在 viewDidLoad 中:

    if UIApplication.shared.userInterfaceLayoutDirection == .rightToLeft
    {
        self.collectionView.semanticContentAttribute = .forceLeftToRight
    }

这只是让它表现从左到右,然后它很高兴并做预期的事情。 请记住,由于转换是以编程方式调用的并且未启用用户分页,因此用户的体验不会令人困惑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM