【问题标题】:TopLayoutGuide and BottomLayoutGuide Deprecated in iOS 11TopLayoutGuide 和 BottomLayoutGuide 在 iOS 11 中已弃用
【发布时间】:2018-01-14 01:09:08
【问题描述】:

UIViewControllertopLayoutGuidebottomLayoutGuide 在 iOS 11 中已弃用。应该替换什么?

【问题讨论】:

    标签: autolayout ios11


    【解决方案1】:

    以前在你的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 的变化。这是因为顶部布局指南是视图控制器顶部的一个矩形,因此为了将您的内容限制在顶部,您需要指南的底部锚点。新的安全区布局指南是视图的矩形部分,不会被条和其他内容遮挡,因此您需要顶部锚点。底部布局指南反之亦然。

    【讨论】:

    • 我似乎无法使用视觉布局格式语言来做到这一点。你有一个例子吗?我得到'-[NSLayoutYAxisAnchor nsli_superitem]:无法识别的选择器'
    • viewview.safeAreaLayoutGuide.topAnchor 中的含义是什么?是customView吗?
    猜你喜欢
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    • 2015-12-13
    • 1970-01-01
    • 1970-01-01
    • 2023-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多