TopLayoutGuide 和 BottomLayoutGuide 在 iOS 11 中弃用

TopLayoutGuide and BottomLayoutGuide Deprecated in iOS 11

UIViewControllertopLayoutGuidebottomLayoutGuide 在 iOS 中已弃用 11. 应该用什么替代?

之前在您的 UIViewController:

customView.topAnchor.constraint(equalTo: topLayoutGuide.bottomAnchor).isActive = true
customView.bottomAnchor.constraint(equalTo: bottomLayoutGuide.topAnchor).isActive = true

现在你应该使用:

customView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor).isActive = true
customView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor).isActive = true

请注意从 bottomAnchortopAnchor 的变化。这是因为顶部布局指南是视图控制器顶部的一个矩形,所以为了将您的内容限制在顶部,您需要指南的底部锚点。新的保险箱布局指南是视图的矩形部分,未被条形图和其他内容遮挡,因此您需要顶部锚点。底部布局指南反之亦然。