【问题标题】:How to get safe area top,bottom,right,left value in iOS?如何在 iOS 中获取安全区域的顶部、底部、右侧、左侧值?
【发布时间】:2018-02-22 09:06:35
【问题描述】:

Xcode iOS 如何获取安全区域 top ,bottom ,right ,left 的值 像这样 -> How to get height of topLayoutGuide?

// Inside your viewController
self.topLayoutGuide.length

【问题讨论】:

    标签: ios ios11


    【解决方案1】:

    安全区域插图是一个UIEdgeInsets 结构。您可以像这样访问组件:

     view.safeAreaInsets.left
     view.safeAreaInsets.right
     view.safeAreaInsets.top
     view.safeAreaInsets.bottom
    

    【讨论】:

    • 还要注意和topLayoutGuide类似,这些insets只在viewDidLayoutSubviews之后填充。
    • 我用 iPhone X 模拟器试过这个,底部插入为零。这正常吗?不应该考虑home指示器的位置吗?
    • @enigma safeAreaInsets 在调用 view.layoutSubviews 和随后的 viewController.viewDidLayoutSubviews 时可用
    • 在 viewdidlayout 中使用 self.view.safeAreaInsets.top 会使应用程序崩溃。
    • @enigma 尝试从视图控制器的view 属性访问safeAreaInsetssafeAreaInsets 在子视图上似乎全为零。
    猜你喜欢
    • 2016-07-10
    • 2021-06-14
    • 1970-01-01
    • 1970-01-01
    • 2011-11-24
    • 2016-02-18
    • 1970-01-01
    • 2012-05-02
    • 1970-01-01
    相关资源
    最近更新 更多