在iPhone 14或更高版本的设备上,可以使用以下代码来获取状态栏的高度:

- (CGFloat)getStatusBarHeight {
    if (@available(iOS 13.0, *)) {
        UIWindow *keyWindow = UIApplication.sharedApplication.windows.firstObject;
        return keyWindow.windowScene.statusBarManager.statusBarFrame.size.height;
    } else {
        return UIApplication.sharedApplication.statusBarFrame.size.height;
    }
}

在iOS 13及更高版本中,要通过UIWindowScene类来获取状态栏的高度。首先,获取应用程序的keyWindow,然后通过statusBarManager属性获取状态栏的管理器,最后使用statusBarFrame属性获取状态栏的frame。

在iOS 13以下的版本中,可以直接使用UIApplication类的statusBarFrame属性来获取状态栏的frame。

请注意,这段代码使用了Objective-C语言编写,因此需要在Objective-C的文件中使用

iOS 获取statusBarHeight 要处理iphone14 object-c

原文地址: https://www.cveoy.top/t/topic/ivKx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录