UICollectionView 不会在 RTL 中从右到左填充数据

P. *_*sin 2 collectionview right-to-left ios

我有一个UICollectionView并且想要水平显示单元格,例如

在 English 中,它应该显示: | 单元格A | 细胞B | 细胞C |

在阿拉伯语中,它应该显示: [ cellC | 细胞B | 单元格A |

对于 RTL,UICollectionViewFlowLayout如果每个单元格的大小相同,默认情况下对我来说效果很好。但是,如果我collectionView:layout:sizeForItemAtIndexPath:为每个单元格实现并设置不同的宽度,则CollectionView将变为:

| 单元格A | 细胞B | 细胞C |

有没有什么办法解决这一问题?

小智 5

class RTLSupportedCollectionViewFlowLayout: UICollectionViewFlowLayout {

    override var flipsHorizontallyInOppositeLayoutDirection: Bool {
        return true
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以使用此流程布局。仅当所有单元格返回的项目大小不同时才需要它。