今天在处理兼容性的时候发现 iOS 10+ 以上表现没有问题 iOS 10版本
具体表现为 UICollectionViewCell
在使用 systemLayoutSizeFittingSize:UILayoutFittingCompressedSize
计算高度的时候iOS 10 版本 不准确
xib文件:
如果是 按照 Cell
来计算
如果是 按照 Cell.contentView
来计算 (这个是算出是正确的)
作为了解下这个原因 这里截取官方的内容:
别人也总结了一下:
结论
经过上面的思考,可以得出结论:
子视图都必须加入contentView
不要修改contentView的布局属性,frame也好,添加约束也好,都是禁止的。
可能有人会问,这样的话如何实现insets效果呢?答案很简单:创建一个containerView,将所有子视图放到里面,然后把它加入contentView,再做insets. 例如:
这里记录一下~