国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iPhoneX 序列適配方案(小結)

2019-10-21 18:39:41
字體:
來源:轉載
供稿:網友

和往常一樣,蘋果發布新產品,我們作為開發者都需要對系統和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序列機型的寬高&比例:

//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原生的適配

#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序列機型的適配

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類型 再乘以100export const isIphoneX = (Platform.OS === 'ios' && (Number(((height/width)+"").substr(0,4)) * 100) === 216); 

總結

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到IOS開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 文化| 沂水县| 饶平县| 当涂县| 太保市| 天镇县| 通许县| 思南县| 新乡县| 收藏| 鄄城县| 苏尼特左旗| 竹溪县| 湛江市| 夏津县| 平陆县| 奉贤区| 黄龙县| 开平市| 铜川市| 大庆市| 黄浦区| 克山县| 阜南县| 包头市| 武汉市| 扎赉特旗| 侯马市| 锦屏县| 浪卡子县| 苗栗市| 田东县| 桐柏县| 温泉县| 桦南县| 大悟县| 广灵县| 彰化市| 龙里县| 敖汉旗| 阳山县|