我在视图中有两个UIButton,宽度为232px。
按钮对齐,例如
|[BUTTON1][BUTTON1]|
|-------232px------|
我对此对齐有一组约束,但现在我希望能够将BUTTON1
的帧更改为全宽,具体取决于条件,因此它“d”必须以编程方式。我尝试更改框架,但由于它会自动更新,因此无法正常工作。基本上,我想要实现的是BUTTON1
覆盖BUTTON2
,是否有一种简单的方法可以做到这一点?
谢谢!
答案 0 :(得分:1)
当您在项目中使用autoLayout时,要更改按钮的框架,您必须更改UIButton的约束。
首先制作按钮宽度约束的IBOutlet,然后当你想改变按钮的框架时更新那个约束
button.widthConstraint.constant = //set the constraint;
[UIView animateWithDuration:0.25f
animations:^{
[self.view setNeedsLayout];
}
completion:^(BOOL finished) {
}];
答案 1 :(得分:1)
按钮和宽度约束的出口然后
self.buttonWidthConstraint += 20 // adjust as per requirements
[self.myButton updateConstraints]
答案 2 :(得分:0)
您可以将覆盖按钮的常量设置为0,并为更改设置动画。然后覆盖按钮将填充整个空间。