gpt4 book ai didi

SwiftUI 屏幕安全区域

转载 作者:行者123 更新时间:2023-12-04 14:35:30 35 4
gpt4 key购买 nike

我试图在 SwiftUI 应用程序启动中计算屏幕安全区域大小,以便我可以从不同屏幕大小的 iOS 设备的安全区域矩形中导出组件大小。
UIScreen.main.bounds - 我可以在开始时使用它,但它给了我总屏幕而不是安全区域
GeometryReader - 使用它我可以获得安全区域的 CGSize 但我找不到将它发送到任何地方的方法 - 尝试使用通知和简单函数,这两者都导致错误
最后,我尝试在初始 View 中使用 .onPreferenceSet 事件,然后在该闭包中在引用文件中设置一个 CGSize 变量,但是这样做,出于某种原因会使第一个 View 初始化两次。有谁知道在应用程序启动时获得边缘插入或安全区域大小的好方法吗?

最佳答案

更简单的解决方案:

UIApplication.shared.windows.first { $0.isKeyWindow }?.safeAreaInsets.bottom
或更短:
UIApplication.shared.windows.first?.safeAreaInsets.top

关于SwiftUI 屏幕安全区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62558321/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com