5

我的问题与使用自动布局(著名)有关;)

我想在同一个视图控制器中管理 2 种子视图情况,以便我可以从一种情况转到另一种情况(并且互惠)。

让我用下图来介绍问题:

2种情况下同一个视图控制器示意图

问题是我不知道如何在 Interface Builder 中表达自动布局约束,以便我可以轻松地从一种情况切换到另一种情况。更准确地说,子视图 VIEW_B1 和 VIEW_B2 是具有不同高度的不同子视图。

我已经尝试隐藏我不想看到的子视图(VIEW_B1 或 VIEW_B2),但在这种情况下,VIEW_C 将保持在其 Y 位置。我希望将 VIEW_C 粘合到 VIEW_B* (未隐藏的那个)。

4

1 回答 1

2

隐藏视图不会删除约束。您必须从其父视图中删除视图 B1,插入 B2,然后将约束 B2 添加到其上方和下方的视图中。

如果您不想完全删除视图,可以将每个 B* 视图链接到其上方和下方视图的约束存储在属性中,然后当您切换视图时,删除并添加适当的约束到超级视图.

于 2013-06-01T15:13:50.187 回答