#define TotaliPhoneX (NAVIGATION_BAR_HEIGHT+HOME_INDICATOR_HEIGHT)

// 判断iPhoneX

// 判断是否是ipad

#define isPad ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)

#define iPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO)

// 判断iPHoneXr

#define IS_IPHONE_Xr ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

// 判断iPhoneXs

#define IS_IPHONE_Xs ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

// 判断iPhoneXs Max

#define IS_IPHONE_Xs_Max ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

// 判断iPhone11

#define IS_IPHONE_11 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

#define IS_IPHONE_11_Pro ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

#define IS_IPHONE_11_Pro_Max ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

#define Height_StatusBar ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES) ? 44.0 : 20.0)

#define Height_NavBar ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES) ? 88.0 : 64.0)

#define Height_TabBar ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES) ? 83.0 : 49.0)

//判断iPhoneX所有系列

#define IS_PhoneXAll (iPhoneX || IS_IPHONE_Xr || IS_IPHONE_Xs_Max || IS_IPHONE_Xs || IS_IPHONE_11 || IS_IPHONE_11_Pro || IS_IPHONE_11_Pro_Max)

// 状态栏高度

#define STATUS_BAR_HEIGHT ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES || IS_IPHONE_11 == YES || IS_IPHONE_11_Pro == YES || IS_IPHONE_11_Pro_Max == YES) ? 44.0 : 20.0)

// 导航栏高度

#define NAVIGATION_BAR_HEIGHT ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES || IS_IPHONE_11 == YES || IS_IPHONE_11_Pro == YES || IS_IPHONE_11_Pro_Max == YES) ? 88.0 : 64.0)

// tabBar高度

#define TAB_BAR_HEIGHT ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES || IS_IPHONE_11 == YES || IS_IPHONE_11_Pro == YES || IS_IPHONE_11_Pro_Max == YES) ? 83.0 : 49.0)

// home indicator

#define HOME_INDICATOR_HEIGHT ((iPhoneX == YES || IS_IPHONE_Xr == YES || IS_IPHONE_Xs == YES || IS_IPHONE_Xs_Max == YES || IS_IPHONE_11 == YES || IS_IPHONE_11_Pro == YES || IS_IPHONE_11_Pro_Max == YES) ? 34.0 : 0)

android齐刘海屏幕适配,ios 适配所有齐刘海手机屏幕的宏定义相关推荐

  1. iphone屏幕上的圆圈怎么设置_iPhone手机屏幕突然变暗或者黑屏怎么办?看这里你就知道该怎么办...

    阅读本文前,请您先点击上面的蓝色字体,再点击"关注",这样您就可以继续免费收到各种有关娱乐的文章了.每天都有分享,完全是免费订阅,请放心关注. 注:本文转载自网络,不代表本平台立场 ...

  2. jsp页面适应手机屏幕_JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码...

    手机的屏幕有大有小,移动web最好做成响应式布局,也就是自适应屏幕,没有固定宽高,这样的话,在所有手机上都可以正常显示.关于移动端页面按手机屏幕分辨率自动缩放的js,先附上代码 var phoneWi ...

  3. 树莓派接手机屏幕_如何将树莓派连接到手机屏幕

    第1步:您需要的东西 仅第一次: =>整个树莓派设置(显示器,键盘,鼠标,树莓派). 您可以使用朋友的设置,则只需要第一次使用. 始终使用: =>智能手机. => Raspberry ...

  4. 手机屏幕厂家信息软件_悬浮在手机屏幕的备忘录有哪些?手机桌面备忘录便签提醒软件...

    两手指捏合或者长按手机桌面空白处地方,在手机屏幕的窗口小工具中找到一个应用软件,即可将该软件悬挂至手机主屏幕上显示,安卓手机通常采用这一方法将一些常用的软件放在手机桌面上显示. 日常工作.生活中,大家 ...

  5. IOS,十六进制颜色和RGB颜色的宏定义

    2019独角兽企业重金招聘Python工程师标准>>> 16进制颜色值宏定义. //调用NSString *str = model.Color; NSString *strColor ...

  6. Android适配 获取手机屏幕的分辨率

    如何将一个应用程序适配在不同的手机上,虽然这不算是一个技术问题,但是对于刚刚做屏幕的开发人员来说,还真不是一件多么简单的事情. 首先:你需要在AndroidManifest.xml文件的<man ...

  7. Android:在PC屏幕上显示Android手机屏幕

    在PC上显示手机屏幕   概述 很多时候我们需要获取手机屏幕的信息,我们经常依赖于手机截屏工具来做这些事情.除了手机截屏软件(往往需要root权限),在使用ADT开发过程中,我们可以使用它对应的工具来 ...

  8. 修复Android手机屏幕的5种简单方法是黑色的

    作为Android用户,您是否遇到过以下情况: Android 设备的通知指示灯持续闪烁,但设备没有响应. 手机屏幕经常冻结. Android手机经常重新启动或崩溃. 安卓手机电池消耗得非常快. 您的 ...

  9. android如果手机屏锁忘记了怎么办,手机屏幕锁忘记图案怎么办 自己也能轻松搞定...

    手机屏幕锁忘记图案怎么办 自己也能轻松搞定 来源:www.18183.com作者:皮卡时间:2015-04-07 手机功能也越来越强大,甚至可以替代电脑,所以手机中存储着大量的个人隐私,很多用户习惯使 ...

最新文章

  1. 手把手教你写移动端瀑布流控件布局篇
  2. 支付宝异步回调返回success_深入解决异步编程Promise对象的学习
  3. [原创]互联网金融App测试介绍
  4. 内存不足而没有OutOfMemoryError
  5. vijos1196|吃糖果游戏|博弈论
  6. GetURL (java)
  7. 【做题】CSA49F - Card Collecting Game——思维dp
  8. php 怎么看nginx,查看nginx是否启动
  9. Ablative analysis(消融分析)
  10. 打造高效的运维日志收集与分析平台
  11. 【免费分享】收集整理的117套各类微信小程序模板源码分享
  12. Kconfig语法学习
  13. 如何用计算机制作海报,怎么用word制作海报_如何做宣传海报word
  14. mount –o remount,rw /
  15. chm 转化为 html 转化为 txt
  16. Python sklearn针对不同人群的差异化保险费用定价方案
  17. 深度学习(九) GAN 生成对抗网络 理论部分
  18. 【原创】VBA学习笔记(15)VBA的参数传递:ByVal 和 ByRef 的区别
  19. 【百度群面】2017年春招-实习产品经理-群面复盘
  20. python项目报告书_python项目

热门文章

  1. LPC11C14刷卡门锁
  2. Windows 的redis 设置密码问题
  3. proxyTable解决跨域
  4. python闭包实现原理_Python 闭包详解
  5. 产品设计中的倒角——手绘外观设计的关键点
  6. 从0-1做产品快速启动,大型干货案例分享
  7. 移动安全--53--Android系统版本与API版本对照表
  8. 市值被小鹏超越/销量多月下滑,自主“一哥”的转型压力
  9. Linux下压缩文件夹命令
  10. scrapy 利用urljoin实现自动翻页 蛋壳租房房源信息