IOS(刘海/留海/流海)屏幕判断

IPhone 8 没刘海屏幕

示例代码:

objectivec 复制代码
//
//  ViewController.m
//  IOS_SAFEAREA_TEST
//
//  Created by Hacker X on 2023/10/14.
//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    if (__IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_11_0){
        NSLog(@"使用宏检测IOS系统版本是否为IOS11及以上");
        NSLog(@"__IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_11_0 => \niOS Version:%@\n,Model Name:%@\n,Model:%@",
              [UIDevice currentDevice].systemVersion,
              [UIDevice currentDevice].name,
              [UIDevice currentDevice].model
              );
    }
    
    if (@available(iOS 11.0,*)) {
        NSLog(@"使用@available检测系统版本是否为IOS11及以上");
        NSLog(@"@available(iOS 11.0,*) => \n iOS Version:%@\n,Model Name:%@\n,Model:%@\n", 
              [UIDevice currentDevice].systemVersion,
              [UIDevice currentDevice].name,
              [UIDevice currentDevice].model
              );
        //安全区域检测
        //IOS 15及以上系统
        if(@available(iOS 15.0,*)){
            if([UIApplication sharedApplication].windows[0].safeAreaInsets.bottom>0){
                NSLog(@"刘海屏-底部安全区%f",[UIApplication sharedApplication].windows[0].safeAreaInsets.bottom);
            }else{
                NSLog(@"没有刘海屏-底部安全区%f",[UIApplication sharedApplication].windows[0].safeAreaInsets.bottom);
            }
        }
        else{ //IOS 15以下系统
            if([UIApplication sharedApplication].windows[0].safeAreaInsets.bottom>0){
                NSLog(@"底部安全区%f",[UIApplication sharedApplication].windows[0].safeAreaInsets.bottom);
            }else{
                NSLog(@"底部安全区%f",[UIApplication sharedApplication].windows[0].safeAreaInsets.bottom);
            }
        }
    }
}


@end
相关推荐
LDyun_12 小时前
2026暑期云手机选型指南:从稳定性、成本到风控六大核心评判维度
arm开发·ios·智能手机·安卓·玩游戏
库奇噜啦呼15 小时前
【iOS】数据存储与持久化
ios
pop_xiaoli16 小时前
【iOS】离屏渲染
macos·ios·objective-c·cocoa
_瑞1 天前
深入理解 iOS 渲染原理
前端·ios
Android出海2 天前
iOS 出海新门槛:未成年人合规来了
ios·app store·ios开发·苹果开发者·ios开发者·ios出海
2501_915106322 天前
iOS 软件测试工具性能监控、日志分析 KeyMob、Instruments等
android·ios·小程序·https·uni-app·iphone·webview
木叶丸2 天前
AI 编程概念与 Harness 工程实践入门
人工智能·flutter·ios
zzb15802 天前
Zed 配置 Swift / iOS 开发
开发语言·ios·swift
黑科技iOS上架3 天前
如何解决AppStore Guideline 5.6被拒
经验分享·ios·ai编程
韩曙亮3 天前
【Flutter】iOS 网络权限设置 ① ( WLAN/蜂窝全局联网权限设置 )
网络·flutter·ios·网络权限