1

如何在 iOS 11 中使用界面生成器将视图的底部锚点固定到其超级视图的底部安全区域锚点?

我已经能够像这样以编程方式做到这一点:

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;
}

当我转到界面生成器时,我看不到底部安全区域锚点:

在此处输入图像描述

4

1 回答 1

4

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

您可以使用文件检查器中的选项(在右侧面板中)启用此功能: 如何启用安全区域

然后,安全区域看起来像一个特定类型的视图,您可以使用它来添加您的约束: 添加与安全区域相关的约束

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

于 2017-09-19T00:47:50.687 回答