Xcode IB:UIButton隐藏但仍有按钮空间

Ste*_*hot 8 xcode objective-c ios autolayout

我的iPhone应用程序中存在以下问题.我的IB中有4个按钮也链接到我的UIViewController(IBOutlet)当我例如隐藏第二个按钮时,它是AfvalSoorten[self.btnAfvalSoorten setHidden:YES];然后它消失了,这就是我想要的,但是当我在模拟器上调试应用程序时,我仍然有按钮空间.

我怎么能摆脱它呢?贝娄有一个例子.

在此输入图像描述

在此输入图像描述

故事板上是否有按钮选项?夹在一起?

djr*_*ero 17

你应该使用autolayout.否则,这是新屏幕尺寸的噩梦.

使用自动布局,您可以按编程方式执行操作:使用某些约束设置按钮,然后当您决定隐藏按钮时,删除不需要的约束.它灵活而强大,但对初学者来说并不是最简单的方法.

一种简单的方法是使用额外的约束.例如,如果您有按钮1,2和3(参见屏幕截图),并且您计划删除按钮2,则可以在3和1之间添加额外约束:

在此输入图像描述

该约束的优先级应该低于其他约束(在我的示例中为250)(默认为1000).这意味着当按钮2就位时(具有更高的优先级约束),将不会应用约束.

然后,删除按钮而不是隐藏它.

[self.button removeFromSuperview];
Run Code Online (Sandbox Code Playgroud)

当您隐藏按钮时,布局系统仍会考虑做出决定,这会使布局更加复杂.如果你想保持按钮,确保它strong在属性声明中使用修饰符.