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

2023-11-03 02:10

本文主要是介绍IOS(刘海/留海/流海)屏幕判断,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 IPhone 8 没刘海屏幕

示例代码:

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

 

这篇关于IOS(刘海/留海/流海)屏幕判断的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/334844

相关文章

Python+PyQt5实现多屏幕协同播放功能

《Python+PyQt5实现多屏幕协同播放功能》在现代会议展示、数字广告、展览展示等场景中,多屏幕协同播放已成为刚需,下面我们就来看看如何利用Python和PyQt5开发一套功能强大的跨屏播控系统吧... 目录一、项目概述:突破传统播放限制二、核心技术解析2.1 多屏管理机制2.2 播放引擎设计2.3 专

Python实战之屏幕录制功能的实现

《Python实战之屏幕录制功能的实现》屏幕录制,即屏幕捕获,是指将计算机屏幕上的活动记录下来,生成视频文件,本文主要为大家介绍了如何使用Python实现这一功能,希望对大家有所帮助... 目录屏幕录制原理图像捕获音频捕获编码压缩输出保存完整的屏幕录制工具高级功能实时预览增加水印多平台支持屏幕录制原理屏幕

C++实现回文串判断的两种高效方法

《C++实现回文串判断的两种高效方法》文章介绍了两种判断回文串的方法:解法一通过创建新字符串来处理,解法二在原字符串上直接筛选判断,两种方法都使用了双指针法,文中通过代码示例讲解的非常详细,需要的朋友... 目录一、问题描述示例二、解法一:将字母数字连接到新的 string思路代码实现代码解释复杂度分析三、

Java判断多个时间段是否重合的方法小结

《Java判断多个时间段是否重合的方法小结》这篇文章主要为大家详细介绍了Java中判断多个时间段是否重合的方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录判断多个时间段是否有间隔判断时间段集合是否与某时间段重合判断多个时间段是否有间隔实体类内容public class D

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from

Python判断for循环最后一次的6种方法

《Python判断for循环最后一次的6种方法》在Python中,通常我们不会直接判断for循环是否正在执行最后一次迭代,因为Python的for循环是基于可迭代对象的,它不知道也不关心迭代的内部状态... 目录1.使用enuhttp://www.chinasem.cnmerate()和len()来判断for

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

安卓链接正常显示,ios#符被转义%23导致链接访问404

原因分析: url中含有特殊字符 中文未编码 都有可能导致URL转换失败,所以需要对url编码处理  如下: guard let allowUrl = webUrl.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return} 后面发现当url中有#号时,会被误伤转义为%23,导致链接无法访问

poj 3259 uva 558 Wormholes(bellman最短路负权回路判断)

poj 3259: 题意:John的农场里n块地,m条路连接两块地,w个虫洞,虫洞是一条单向路,不但会把你传送到目的地,而且时间会倒退Ts。 任务是求你会不会在从某块地出发后又回来,看到了离开之前的自己。 判断树中是否存在负权回路就ok了。 bellman代码: #include<stdio.h>const int MaxN = 501;//农场数const int

zoj 1721 判断2条线段(完全)相交

给出起点,终点,与一些障碍线段。 求起点到终点的最短路。 枚举2点的距离,然后最短路。 2点可达条件:没有线段与这2点所构成的线段(完全)相交。 const double eps = 1e-8 ;double add(double x , double y){if(fabs(x+y) < eps*(fabs(x) + fabs(y))) return 0 ;return x + y ;