簡體   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