Goo*_*rel 48 ios autolayout uicollectionview nslayoutconstraint uicollectionviewlayout
我一直得到'无法同时满足约束'的例外(Xcode 5,iOS 7,设备和模拟器),其中列表中的一个约束是这样的:
"<NSLayoutConstraint:0x165b23d0 'UIView-Encapsulated-Layout-Width'
H:[StoryPlayerCell:0x165affc0(0)]>"
Run Code Online (Sandbox Code Playgroud)
我自己没有设置这个约束.它也不是NSAutoresizingMaskLayoutConstraint.但是它来自哪里?我怎么能摆脱它呢?
我不知道.我'UIView-Encapsulated-Layout-Width'在Apple的文档中找不到任何相关内容.即便是谷歌搜索也没有任何回报.
有什么建议?
PS:我在UICollectionView一个自定义子类中使用这个单元格UICollectionViewFlowLayout.也许这'Encapsulated-Layout'部分与此有关?
DZe*_*Bot 15
一个快速而好的修复方法是将999优先级值分配给具有高优先级的自定义约束.封装和自动生成的约束应该优先于您的约束.
我使用了示例,我认为这些代码导致了自动布局异常。
CGFloat height = MAX(0, -y + maxY);CSStickyHeaderFlowLayout.m 中的第 79 行。
如果你使用像 200 这样的静态高度值,异常就不会再发生。我无法理解 UIView-Encapsulated-Layout 到底是什么,但似乎动态更改 UICollectionViewLayoutAttributes 框架可能会导致该问题。在示例项目中,它是高度,在 PO 的问题中,我猜它是宽度。如果您认为这会有所帮助,也许我可以深入研究一下
| 归档时间: |
|
| 查看次数: |
12915 次 |
| 最近记录: |