我正在一个项目中,我正在为该应用程序使用自动布局/通用故事板。

我有一个UIButton,我想在特定事件中移到新位置。但是却不影响自动布局。因此,每台设备上的外观都相同。

我设法通过以下代码移动了按钮:

int deltaY = 100;

    [ans1 removeConstraints:ans1.constraints];
    ans1.frame = CGRectMake(ans1.frame.origin.x, ans1.frame.origin.y + deltaY, ans1.frame.size.width, ans1.frame.size.height);

但是,按钮会在一秒钟左右的时间内移回到其原始位置。

最佳答案

为什么要删除Button中的约束?除了删除约束以外,您还可以创建Button Y约束的IBOutlet,然后更改该Y约束值

选择要更改的LayoutConstraint,然后控制将其拖到.h文件中

@property (nonatomic, weak) IBOutlet NSLayoutConstraint *yAxisConstrain;

像这样更改您的约束值,
yAxisConstrain.constant = 0; //What ever the value you want.
[self.view layoutIfNeeded];

关于ios - 使用自动布局时在Y轴上移动UIButton,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29047274/

10-10 20:53