首页 > 其他分享 >IOS(刘海/留海/流海)屏幕判断

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

时间:2023-10-30 17:33:14浏览次数:46  
标签:windows currentDevice NSLog safeAreaInsets UIDevice sharedApplication 流海 留海 IOS


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

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

 IPhone 8 没刘海屏幕

IOS(刘海/留海/流海)屏幕判断_系统版本_03

示例代码:

//
//  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

 

标签:windows,currentDevice,NSLog,safeAreaInsets,UIDevice,sharedApplication,流海,留海,IOS
From: https://blog.51cto.com/remotedev/8095792

相关文章

  • 小米自研系统MIOS曝光:链接全生态 非安卓套壳
    导读近日消息,既然小米有打算推出自研系统,那么就应该跟安卓没什么太大关联,这个前期肯定会受到外界的质疑。从最新曝光的细节看,小米自研系统将会跟华为鸿蒙差不多,即MIOS将为手机、物联网设备等生态链接能力提供支持,这是一个全生态的系统平台,毕竟他们也会有汽车这样的超级单......
  • axios请求实战
    Home主页请求数据一、概览1.request请求2.找到合适API并传相应参数3.需要请求的组件调用4.请求方接受数据并传至展示组件二、一起看下代码吧,这里采用vue的多文件形式1.request.js文件用于创建请求实体2.home.js文件用于封装request请求实现特定页面的请求发送3.......
  • uniapp项目APP端安卓ios权限检测教程
    导语:在APP的日常开发过程中,权限检测与授权是不可避免的一项重要的功能,下面就简单介绍一下如何检测和授权的方法。目录原理方法实战原理此授权方法主要是依托于HTML5产业联盟的HTML5+规范实现的。HTML5产业联盟官网获取当前操作系统名称可以使用uni.getSystemInf......
  • AJAX学习(四)-(axios核心的原理)
    一、Promise1.定义Promise对象用于表示一个异步操作的最终完成(或失败)及其结果值我们用一张图来清晰的看Promise位于哪里2.好处1.逻辑更清晰2.了解axios函数内部运作机制3.能解决回调函数地狱问题3.使用语法及步骤示例代码如下:<!DOCTYPEhtml><htmllang="en"><head><metacha......
  • 如果防止axios发送重复请求
    封装axios请求文件添加函数importaxiosfrom'axios'importqsfrom'qs'//用于存储pending的请求的数组(处理多条相同请求)constpendingRequest=newMap()//生成request的唯一keyconstgenerateRequestKey=(config={})=>{//通过url,method,params,data生成唯一k......
  • vue中使用axios请求post接口为什么先发起OPTIONS请求再发起post请求?
    在使用Axios进行跨域POST请求时,浏览器会先发起一个OPTIONS请求,这是因为浏览器执行了跨域请求时的预检请求(PreflightRequest)。这是一个安全性措施,旨在确保跨域请求不会导致安全风险。1、跨域请求的安全性:当前端应用和后端API位于不同的域或端口时,浏览器会执行同源策略,以防止跨站点......
  • 等待axios请求的返回值来使用
     我们只要关心代码里面的async和await就行了//apiimportsysConfigfrom'@/api/systemManagement/config'asyncgetSysConfigInfo(id:number|string){constcoolieValue=cookies.get("setup_sysmConfigManage_time")if(!coolie......
  • iOS swift便利构造器
    背景:经常需要把一些UI内容写到地一个类里,初化的时候只设置位置,我们能不能把一些已知的参数通过初化的时候直接传进去呢?显然是可以的。假如我们要写一个弹框列表,已知列表的内容,弹框背景全屏幕展示,怎么把列表数据当参数在初化时传进去呢,接下直接上代码。 classUBListChoiceVie......
  • axios中post请求后台req.body接收不到参数的解释
    axios的get请求都是把参数放在params属性下,在post请求下有两种方法,一种是放在params属性中,适合传参较少且数据较简单的情况,另外一种是放在data属性中,如果传参中含有引号、等号、拼接的json串或传参的数据量较大时候使用;后台的服务器的配置,node后台一般会配置中间件解析数据,包含......
  • 苹果发布 iOS 17 正式版
    苹果今天凌晨正式推送iOS17正式版更新,其内部版本号和上周RC版本相同,均为21A329。在全新的iOS17系统中,苹果加入了待机显示功能,为充电时将iPhone横屏放置带来了焕然一新的全屏体验,不用靠近,信息也能一目了然。此外用户可以为通讯录用户设置海报,显示图像、名字等信息。iOS......