我的 iPad 项目出现自动布局约束错误。当我将设备旋转到横向时,我在 IB 中创建的自定义 UICollectionViewCell 会发生这种情况。问题是没有一个约束是可删除的。我仍在学习自动布局,所以我确信这可能只是添加一些限制并删除一些默认限制的问题,但我被卡住了。我的自定义单元格肯定会发生这种情况-当我删除它并使用普通的旧 UICollectionViewCell 时,我没有收到任何错误。
我四处搜索并尝试将自定义单元格上的 translatesAutoresizingMaskIntoConstraints 设置为 NO,但随后出现以下错误:
由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“执行 -layoutSubviews 后仍需要自动布局。UICollectionView 的 -layoutSubviews 实现需要调用 super.'
在我的自定义单元格的子视图上将其设置为 NO 可以正常工作,但是当我在单元格本身上设置它时,它会出错。
这是我得到的自动布局约束错误 - 这是通常的错误:
以下列表中的至少一个约束可能是您不想要的。试试这个:(1)查看每个约束并尝试找出您不期望的;(2) 找到添加了一个或多个不需要的约束的代码并修复它。(注意:如果您看到不理解的 NSAutoresizingMaskLayoutConstraints,请参阅 UIView 属性 translatesAutoresizingMaskIntoConstraints 的文档)
(
"NSAutoresizingMaskLayoutConstraint:0x76bf950 h=-&- v=-&- CMAGalleryCollectionViewCell:0x7687690.height == UICollectionView:0x9161e00.height - 875","NSAutoresizingMaskLayoutConstraint:0x76693c0 h=--& v=--& V:[UIView:0x7665470(704)]",
"NSLayoutConstraint:0x7665850 UICollectionView:0x9161e00.bottom == UIView:0x7665470.bottom",
“NSLayoutConstraint:0x7665740 V:|-(0)-[UICollectionView:0x9161e00](名称:'|':UIView:0x7665470)”)
将尝试通过打破约束来恢复 NSLayoutConstraint:0x7665850 UICollectionView:0x9161e00.bottom == UIView:0x7665470.bottom
非常感谢任何帮助或建议。
谢谢!