1

我目前正在研究 iPad 原型。我有一个视图控制器,其中包含 3 个表视图,在分段控件下平均拆分为列,在选择其中一个段时,我想在中心隐藏表视图并在左右表视图之间平均共享可用空间. 我怎么能做到这一点。我刚开始研究目标 C,所以任何帮助都会很棒!我使用的是 xcode 4.6,因此默认情况下在视图控制器上选择自动布局。

谢谢!

4

1 回答 1

0

如果您有两个不同的布局无法使用同一组自动布局约束来处理,那么诀窍是拥有第二组较低优先级的约束,在切换到备用 UI 布局时,您会增加其优先级(在您的情况下,隐藏中心表视图)。您通常还必须降低原始布局所需的一个或多个约束的优先级。

在布局 UI 时,您首先要设置约束,以便它们适用于所有三个表视图的布局。然后为“两个表视图”的情况添加优先级较低的约束。在您的控制器中,为那些优先级较低的约束以及所有阻止它们工作的约束创建 IBOutlet 属性。将 outlet 连接到 UI 中的约束。

然后在切换到两个表视图时执行以下操作:

[centerTableView setHidden:YES];

// lower the priority for all constraints that don't apply for two table views
[someConstraint setPriority: NSLayoutPriorityDefaultLow];
// ...

// increase the priority for all previously low-priority constraints
[someOtherConstraint setPriority:NSLayoutPriorityDefaultHigh];
// ...
于 2013-02-20T00:42:49.150 回答