简短版本:创建NSLayoutAttributeCenterX
约束总是会导致约束失败。为什么?
我有一个UITextField
充当搜索文本框的子类。您点击该框并出现一个项目列表,这些项目按您输入的内容进行过滤。像这样:
UITextField
子类负责创建和显示项目的视图。列表的中心应与文本字段的中心匹配。所以,我这样设置我的约束:
NSLayoutConstraint *hugCenter =
[NSLayoutConstraint constraintWithItem:self.searchContainerView
attribute:NSLayoutAttributeCenterX
relatedBy:NSLayoutRelationEqual
toItem:self
attribute:NSLayoutAttributeCenterX
multiplier:1.0
constant:0.0];
这总是会导致错误:
将尝试通过打破约束来恢复 NSLayoutConstraint:0x9a5e1a0 UIView:0x9a5ba40.centerX == SearchTextField:0x7154a40.centerX
为了测试,我使我的场景尽可能简单——视图控制器上的 1 个文本字段:
为什么这会导致约束错误?