我在ios的约束部分真的很弱。我已经浏览了很多参考链接,如下所示,但仍然无法解决我的问题。
隐藏自动布局UIView:如何获取现有的NSLayoutConstraint来更新这个
在这种情况下,我需要根据某些条件更改 UIView2 的 y 轴。 Storyboard.png 显示布局。
如果 UIView2 的条件在步骤 1、步骤 2 和步骤 3 中失败应该是可见的并且它的位置也应该改变,如条件 1.png 所示
如果条件通过带有步骤1的UIView2,步骤2和步骤3不应该是可见的如condition1.png所示
请向我提供如何实现上述场景的步骤。我尝试这样做,但如果为 UIView1 设置约束,高度保持不变并且在运行时不会改变。
只需制作两个 UIView 的高度约束的出口并使用常量属性来更改高度约束,例如......
if conditionfails{
heightconstOfView1.constant = 0
}
else{
heightconstOfView2.constant = 0
}
我使用插座来设置情节提要上的约束,按钮之间的 div(使用旧方法设置动态布局)。因此,对于大屏幕(iPhone 6 及更高版本),我更新固定高度的值(仅在纵向模式下查看应用程序)。对我有用的是:
constHeightlogo.constant = 140 //old value = 72
///set any other updates here then force the view
self.view.layoutIfNeeded()
工作起来很有魅力。
请参阅此处相关内容: