我有一个具有动态高度的视图,并且我试图在运行时更改此视图高度优先级。
这是我的代码部分;
if (index == 0) {
surveyViewHeightConstraint.constant = 0;
surveyViewHeightConstraint.priority = 1000;
} else if (index == 1) {
surveyViewHeightConstraint.constant = 163;
surveyViewHeightConstraint.priority = 500;
}
我正在通过按钮操作更改索引。运行此代码时,出现此错误:
*** Assertion failure in -[NSLayoutConstraint setPriority:], /SourceCache/Foundation/Foundation-1141.1/Layout.subproj/NSLayoutConstraint.m:174
我在这里有什么错?
优先级可能不会从非必需更改为必需,也可能不会从必需更改为非必需。如果将
NSLayoutPriorityRequired
OS X或UILayoutPriorityRequired
iOS中的优先级更改为较低的优先级,或者在将约束添加到视图后将较低的优先级更改为所需的优先级,则将引发异常。即使将约束安装在视图上,也允许从一个可选优先级更改为另一可选优先级。
使用优先级999而不是1000。从技术上讲,它不是绝对必需的,但是它比其他任何事物都具有更高的优先级。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句