func collectionView(_ collectionView: UICollectionView,layout collectionViewLayout: UICollectionViewLayout,sizeForItemAt indexPath: IndexPath) -> CGSize {
    var x = CGSize(width: 88, height: 88)

    if currentCollectionviewMode == .photos {
        if indexPath.row == 0 {
            x = CGSize(width: 88, height: 88)
        } else {
            x = CGSize(width: CGFloat(originalImages[indexPath.row - 1].size.width) / CGFloat(originalImages[indexPath.row - 1].size.height) * 88, height: 88)
        }
    } else {
        x = CGSize(width: 88, height: 88)
    }
    return x
}

在运行这段代码之前一切都很好,但是当这段代码运行我的collectionView align change from rtl to ltr时,我的语义是forceRightToLeft,有什么建议吗?
我试着CGATransform(scaleX:-1,y:1)但是collectionviewcells坚持到左边,并且在viewDidAppear()集合视图中使用scrollToitem显示错误的单元格。

最佳答案

要在collectionView中定义不同的单元格对齐方式,您必须实现自己的UICollectionViewLayoutsee this answer作为参考),或者使用一些库(例如AlignedCollectionViewFlowLayout)。

关于ios - UICollectionView的反向对齐,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48379273/

10-11 18:15