【发布时间】:2016-01-12 20:04:56
【问题描述】:
似乎Apple在RTL语言上的自动翻转界面新功能在使用UICollectionView时会导致问题。
我在集合视图中使用了 Trailing/Leading 类型的约束,它们在 RTL 语言上切换了它们的值。
问题是实际呈现的数据是集合数据源中最后一个 indexPath,但第一个单元格的UIScrollView.contentOffset.x 是0。
正确的行为应该是以下之一:
- 正确显示第一个
indexPath并切换滚动方向(向右) - 最佳选择 - 不翻转 UI/约束,因此呈现的数据/
indexPath/scrollView.contentOffset.x将同步 - 禁用 RTL 支持的选项。 - 显示最后一个 indexPath 的单元格和数据,但同时修复
scrollView.contentOffset.x以表示最后一个单元格位置。
我猜 Apple 可能会在未来某个时候修复它,但同时我们将不得不使用诸如反转数组和/或滚动到最后一个对象之类的变通方法。
【问题讨论】:
-
能否请您在bugreport.apple.com 提交错误报告?
-
@wakachamo 会的!感谢您的直接链接...
-
如果您确实实施了解决方法,请滚动视图而不是反转数组 - 错误位于初始位置,而不是布局本身。
-
您收到 Apple 的回复了吗?也可能值得将此添加到 openradar.appspot.com 以帮助其他人跟踪问题。
-
我有另一个关于 UICollectionViewFlowLayout 和 RTL 的问题。如果我为单元格返回不同大小,则布局始终是 LTR。 :O
标签: ios autolayout uicollectionview ios9 right-to-left