iOS iPhone中的宽度相同的Autolayout问题

use*_*811 6 iphone xcode storyboard ios autolayout

我有三个视图作为子视图,如下所示,具有相等的宽度和高度约束

在此输入图像描述

如果视图B没有数据,则应显示如下 在此输入图像描述

我尝试如果iset B的宽度为零,那么所有视图宽度将为零.

怎么弄这个?

谢谢

Ind*_*ore 3

你能做的就是为其添加宽度约束(中间一个),并使优先级(1000)小于2000,优先级(1000)大于等于宽度(750)

现在制作一个出口,并将约束(<2000)的常量设置为零。

您可以在此处找到示例

为什么我设置它2000是因为这个约束只需要将宽度归零。如果宽度非零,它不应该影响宽度。现在,由于宽度相等(中间视图),并且它应该小于,2000因此视图在屏幕上均匀显示。当我将宽度约束设置为零时,中间视图的宽度变为零,因为它的优先级高于相等的宽度。

在此输入图像描述


此代码将中间视图的宽度设置为零。

- (IBAction)btnClick:(id)sender {
  self.widthView2.constant = 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述