我有一个使用自动布局并在 Interface Builder 中配置的 View 。该 View 包含两个 subview ,每个 subview 占据屏幕的一半。为了实现这一点,我以编程方式将其中一个 View 的高度设置为 super View 高度的一半。

NSLayoutConstraint *constraint2 = [NSLayoutConstraint constraintWithItem:bottomView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:contentInner attribute:NSLayoutAttributeHeight multiplier:0.5 constant:0];
[contentInner addConstraint:constraint2];

我遇到的问题是这个 View 是从另一个不使用自动布局的 View Controller 调用的,即
- Main View
-- View 1 (using auto-layout to position children)
---- topView
---- bottomView

我希望能够手动设置 View 1 的大小,然后使用自动布局规则更新它的子项。目前,它根据 UIBuilder 中设置的外框尺寸计算尺寸。

有没有办法实现这一目标,还是我以错误的方式进行?

最佳答案

你可以做到这一点。从 Nib 加载 [view1 setTranslatesAutoresizingMaskIntoConstraints:YES] 后,您只需要 view1

关于iphone - 在 iOS 中混合自动布局和非自动布局 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17219309/

10-16 15:08