iOS 11如何将视图固定到安全区域底部锚点

时间:2017-09-18 22:03:33

标签: ios interface-builder ios11 xcode9 iphone-x

如何使用界面构建器将视图的底部锚点固定到iOS 11中superview的底部安全区域锚点?

我已经能够以编程方式执行此操作:

if (@available(iOS 11.0, *)) {
    [self.myBottomView.bottomAnchor constraintEqualToAnchor:self.view.safeAreaLayoutGuide.bottomAnchor].active = true;
} else {
    [self.myBottomView.bottomAnchor constraintEqualToAnchor:self.view.bottomAnchor].active = true;
}

当我进入界面构建器时,我看不到底部安全区域锚点:

enter image description here

1 个答案:

答案 0 :(得分:4)

在Xcode 9之前创建的项目中,故事板和xib不会自动更新以使用安全区域,因为现有的约束需要手动更改。

您可以使用文件检查器中的选项启用此选项(在右侧面板中): How to enable safe area

然后,安全区域显示为特定类型的视图,您可以使用它来添加约束: Adding constraints related to the safe area

请注意,可以在故事板中使用安全区域,并且部署目标低于iOS 11.我在iOS 10的模拟器中进行了测试,并且按预期工作。