国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - IOS - iPhoneX 序列適配方案(小結)

iPhoneX 序列適配方案(小結)

2021-05-13 16:56藍光95 IOS

這篇文章主要介紹了iPhoneX 序列適配方案(小結),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

和往常一樣,蘋果發布新產品,我們作為開發者都需要對系統和UI布局進行適配,今年也是一樣。從去年發布的 iphoneX開始,iPhone 手機加入了劉海設計,而且針對于iphone的劉海,需要特殊的適配。今年新出的3款iphone都帶有劉海,自然也不例外。

在iphonex以前iphone的頂部導航欄高度都是統一的64,底部導航欄是統一的49;從iphonex的劉海屏開始,出了一個SafeArea的概念,帶劉海設計的iphone,頂部導航的高度由原來的64,變成了88,因為狀態欄的高度由原來的20變成了44;底部導航欄的高度由原來的49,變成了83。

所以對于iphonex序列的手機的適配,都需要針對頂部導航&底部導航進行適配。只不過原來判斷iphonex的方法,已經不能完全判斷新的iphonex新機型。要么繼續加if{}else{}進行判斷,要么就是尋找新的方法,還好iphonex序列的機型的寬高比是有規律的。

從網上看到了別人的帖子列出了iphonex序列機型的寬高&比例:

?
1
2
3
4
5
//iphoneX 序列機型的屏幕高寬
//XSM SCREEN_HEIGHTL = 896.000000,SCREEN_WIDTHL = 414.000000 2.1642512077
//XS SCREEN_HEIGHTL = 812.000000,SCREEN_WIDTHL = 375.000000 2.1653333333
//XR SCREEN_HEIGHTL = 896.000000,SCREEN_WIDTHL = 414.000000 2.1642512077
//X SCREEN_HEIGHTL = 812.000000,SCREEN_WIDTHL = 375.000000 2.1653333333

iphonex序列iOS原生的適配

?
1
2
3
4
#define SCREEN_HEIGHTL [UIScreen mainScreen].bounds.size.height
#define SCREEN_WIDTHL [UIScreen mainScreen].bounds.size.width
#define KIsiPhoneX ((int)((SCREEN_HEIGHTL/SCREEN_WIDTHL)*100) == 216)?YES:NO
//判斷是否為 iPhoneXS Max,iPhoneXS,iPhoneXR,iPhoneX

react-native針對于iphonex序列機型的適配

?
1
2
3
4
5
6
7
8
9
const {width, height} = Dimensions.get('window');
//iphoneX 序列機型的屏幕高寬
//XSM SCREEN_HEIGHTL = 896.000000,SCREEN_WIDTHL = 414.000000 2.1642512077
//XS SCREEN_HEIGHTL = 812.000000,SCREEN_WIDTHL = 375.000000 2.1653333333
//XR SCREEN_HEIGHTL = 896.000000,SCREEN_WIDTHL = 414.000000 2.1642512077
//X  SCREEN_HEIGHTL = 812.000000,SCREEN_WIDTHL = 375.000000 2.1653333333
 
//目前iPhone X序列手機的適配算法:高寬比先轉換為字符串,截取前三位,轉換為number類型 再乘以100
export const isIphoneX = (Platform.OS === 'ios' && (Number(((height/width)+"").substr(0,4)) * 100) === 216);

總結

無論是iOS原生還是react-native,只要判斷出是iphonex序列機型,針對頂部導航欄和底部導航欄做特殊的處理即可。保證頂部導航和底部導航的UI正確顯示,能夠正確響應事件。(如果適配不好,會出現UI顯示不正確和事件不能夠響應的情況。)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://segmentfault.com/a/1190000016499851

延伸 · 閱讀

精彩推薦
  • IOSiOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)

    iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和

    這篇文章主要介紹了iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)的相關資料,需要的朋友可以參考下...

    CodingFire13652021-02-26
  • IOSiOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    這篇文章主要介紹了iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果的相關資料,需要的朋友可以參考下...

    jiangamh8882021-01-11
  • IOSiOS實現控制屏幕常亮不變暗的方法示例

    iOS實現控制屏幕常亮不變暗的方法示例

    最近在工作中遇到了要將iOS屏幕保持常亮的需求,所以下面這篇文章主要給大家介紹了關于利用iOS如何實現控制屏幕常亮不變暗的方法,文中給出了詳細的...

    隨風13332021-04-02
  • IOSiOS開發之視圖切換

    iOS開發之視圖切換

    在iOS開發中視圖的切換是很頻繁的,獨立的視圖應用在實際開發過程中并不常見,除非你的應用足夠簡單。在iOS開發中常用的視圖切換有三種,今天我們將...

    執著丶執念5282021-01-16
  • IOSiOS開發技巧之狀態欄字體顏色的設置方法

    iOS開發技巧之狀態欄字體顏色的設置方法

    有時候我們需要根據不同的背景修改狀態欄字體的顏色,下面這篇文章主要給大家介紹了關于iOS開發技巧之狀態欄字體顏色的設置方法,文中通過示例代碼...

    夢想家-mxj8922021-05-10
  • IOSiOS中UILabel實現長按復制功能實例代碼

    iOS中UILabel實現長按復制功能實例代碼

    在iOS開發過程中,有時候會用到UILabel展示的內容,那么就設計到點擊UILabel復制它上面展示的內容的功能,也就是Label長按復制功能,下面這篇文章主要給大...

    devilx12792021-04-02
  • IOS詳解iOS中多個網絡請求的同步問題總結

    詳解iOS中多個網絡請求的同步問題總結

    這篇文章主要介紹了詳解iOS中多個網絡請求的同步問題總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    liang199111312021-03-15
  • IOSiOS中MD5加密算法的介紹和使用

    iOS中MD5加密算法的介紹和使用

    MD5加密是最常用的加密方法之一,是從一段字符串中通過相應特征生成一段32位的數字字母混合碼。對輸入信息生成唯一的128位散列值(32個字符)。這篇文...

    LYSNote5432021-02-04
主站蜘蛛池模板: www.中文字幕.com | 乱视频在线观看 | 寡妇高潮免费视频一区二区三区 | 狠狠的日| 久久精品高清 | 中文字幕av在线 | 伊人激情网| 天天澡天天狠天天天做 | 亚洲成人午夜电影 | 日韩大片免费看 | 色综合天天综合网国产成人综合天 | 中文字幕一区二区三区乱码在线 | 日韩精品免费一区二区三区 | 久久人人爽爽爽人久久久 | 一区二区三区日韩 | 中文成人在线 | 亚洲精品一区在线观看 | 91亚洲国产 | 精品无码久久久久国产 | 中文字幕一区在线观看视频 | 免费看国产视频 | 国产乱码精品一区二区三区忘忧草 | 午夜在线| av在线第一页 | 天天操天天干天天爽 | 国产黄色成人 | 在线永久免费观看日韩a | 国产精品久久久久久久岛一牛影视 | 色综合久久88色综合天天6 | 久久精品国产91精品亚洲高清 | 国产免费拔擦拔擦8x高清在线人 | 久久久成人精品 | 日韩小视频网站hq | 免费看男女www网站入口在线 | 中文字幕成人 | 中文字幕精品视频 | 一级久久| 国产精品久久久久久久午夜 | 欧美成年黄网站色视频 | 久久精品国产v日韩v亚洲 | 免费日韩 |