我正在更新我的应用程序,以适应iPhone X.现在所有的视图都工作得很好,只有一个除外.我有一个视图控制器,它呈现一个覆盖整个屏幕的自定义UIView.在我使用UIScreen.main.bounds在所有布局完成之前找出视图的大小之前(我需要它来为集合视图放置正确的itemSize).我以为现在我可以做一些像这样的事情 UIScreen.main.bounds.size.height - safeAreaInsets.bottom以获得正确的可用大小.问题是,SafeAreaInsets在iPhone X(模拟器)上试用时返回(0,0,0,0).有什么主意吗?在其他视图中,我获得了SafeAreaInsets的正确数字.

谢谢!

推荐答案

我已经找到了解决方案:我在视图的init中完成了所有的实现.安全区域插图在layoutSubviews()中的大小正确

Ios相关问答推荐

PieChartView未以编程方式显示在屏幕上

Xamarin Forms CustomPin iOS Render

NSHashTable要求任何MyCustomProtocolAnyObject都是类类型

CIKernel的Metal Shader裁剪问题

在flutter中使用flatter_screenutil这样的软件包的目的是什么?

执行devicectl:ProcessException时出错:进程异常退出:错误:命令超时超过5.0秒

swiftui动画如何实时确定不对称过渡

不使用故事板创建 iMessage 应用程序

如何从 Locale Swift 获取货币符号

如何在 SwiftUI 中只显示一次随机数组的项目?

如何在字段包含字典数组的firestore上查询?

分析应用程序版本时出错 - Apple 提交到store

如何找出坐标之间的距离?

是否可以在没有 Mac 的情况下为 iOS 制作 PhoneGap 应用程序?

如何更新推送通知服务证书

如何关闭情节提要弹出框

UITableView 背景 colored颜色 在 iPad 上总是白色

Xcode / iOS模拟器:手动触发重大位置更改

单击 GoogleSignIn 按钮时应用程序崩溃

SwiftUI 应用生命周期 iOS14 AppDelegate 代码放哪里?