检测带有缺口的 iPhones 的面向未来的方法(如 iPhone X)
Future-proof way to detect iPhones with a notch (like the iPhone X)
我有一个应用程序,我想在没有缺口的 iPhone 上全屏显示(隐藏状态栏),但坚持在安全区域(保持状态栏可见) iPhone 有凹口的,例如 iPhone X。
我不能只将我的应用程序限制在所有设备上的安全区域,因为安全区域包括 iPhone 上没有缺口的状态栏。
我能想到的方法有:
- Checking the device model,或
- 查看主要
UIWindow
的安全区域插图并尝试从实际值中推断出一些东西(例如 "if top inset is >22, then it has a notch")
None 以上非常干净,不是面向未来的。
我找不到任何 "future-proof" 方法来做到这一点,所以我最终依靠安全区域插图。
不过,一个重要的注意事项是,这应该不通过单独检查顶部插图来完成,因为顶部插图可能会有所不同,例如,当通话中正在显示状态栏。最好检查底部插图或同时检查底部 和 顶部。
我有一个应用程序,我想在没有缺口的 iPhone 上全屏显示(隐藏状态栏),但坚持在安全区域(保持状态栏可见) iPhone 有凹口的,例如 iPhone X。
我不能只将我的应用程序限制在所有设备上的安全区域,因为安全区域包括 iPhone 上没有缺口的状态栏。
我能想到的方法有:
- Checking the device model,或
- 查看主要
UIWindow
的安全区域插图并尝试从实际值中推断出一些东西(例如 "if top inset is >22, then it has a notch")
None 以上非常干净,不是面向未来的。
我找不到任何 "future-proof" 方法来做到这一点,所以我最终依靠安全区域插图。
不过,一个重要的注意事项是,这应该不通过单独检查顶部插图来完成,因为顶部插图可能会有所不同,例如,当通话中正在显示状态栏。最好检查底部插图或同时检查底部 和 顶部。