以编程方式更改宽高比约束值

时间:2017-08-02 07:11:22

标签: swift ios-autolayout

我正在使用AutoLayout进行应用设计。对于我的一个HeaderView,我使用AspectRatio设置了它的高度。

现在,当主视图不包含任何数据时,HeaderView高度应为0,添加数据时,应再次设置为原始宽高比。

我们可以在更改任何约束的常量值时更改宽高比。我试过下面的代码,但它没有正常工作。

@IBOutlet weak var constOptions_Height: NSLayoutConstraint!
if arrData.count == 0 {
    constOptions_Height.constant = 0.0
}
else{
    constOptions_Height.constant = 50.0
}

1 个答案:

答案 0 :(得分:1)

您可以使用以下方法

给出两个约束。一个用于纵横比,另一个用于高度。

让两个活跃,或者像

一样
constOptions_Aspect.isActive = false
constOptions_Height.isActive = true 

你可以给身高零,身高不变。