使用自动布局以编程方式设置按钮位置

时间:2014-06-05 02:48:00

标签: ios7 uibutton xcode5 autolayout

根据if语句,我想以编程方式更改按钮的位置,并启用自动布局。下面是我在自动布局之前做的事情,我不确定为什么当我打开自动布局时它不起作用。

if ([dayString isEqualToString:@"Wednesday"]) {

      [Btn setFrame:CGRectMake(20,49,135,35)];
}
else {
    [Btn setFrame:CGRectMake(49,49,135,35)];
}

感谢您的帮助。对此,我真的非常感激。

1 个答案:

答案 0 :(得分:0)

很简单。自动布局和框架设置是完全相同的。如果您正在使用自动布局,则自动布局会设置框架,而不是您。

更确切地说:你可以设置框架,但是当自动布局出现并放弃时,它会根据约束设置框架。因此,您的更改正在被覆盖。

因此,一种选择是在代码中操纵定位按钮的约束。

或者,在这种情况下您可能想要做的是从故事板中取出按钮并在代码中创建它并将其放入您的界面。当您这样做时,该按钮不受自动布局的影响,您只需设置框架。