干熟妇在线视频午夜剧场一级A级|99成人香视频日本两性激情视频|久久 午夜福利无码精品人妻一区|热久久超碰精品精品少妇一区二区|五月天综合在线国产一区免费视频|亚洲成人中心热re久久99|亚洲国产怡红院丁香五月综合h|玖玖九久久久午夜射精视频

十二年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
小程序
tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

iOS開發(fā)之iOS 8屏幕的多樣性

百恒網(wǎng)絡(luò) 2017-06-22 4597

在幾年前開發(fā)iOS應(yīng)用的時候還只需要考慮一個屏幕,我們會自豪地告訴Android開發(fā)者,iPhone不需要考慮屏幕適配問題,而今天這種自豪已經(jīng)失去。隨著iPhone 6設(shè)備的發(fā)布,iOS設(shè)備屏幕越來越多樣化了,這也給開發(fā)人員帶來不小的麻煩。為了適配多種不同的iOS設(shè)備屏幕,iOS 8推出了基于Auto Layout的Size Class技術(shù)。下面南昌APP開發(fā)公司小編和大家一起來學(xué)習(xí)一下iOS 8屏幕的多樣性

1.iOS 8 屏幕的多樣性

2014年9月9日,蘋果公司發(fā)布了iPhone 6設(shè)備,這使得iOS設(shè)備越來越多樣化,其中屏幕的多樣化是最為復(fù)雜的。因此,南昌APP開發(fā)公司在介紹屏幕適配技術(shù)之前,有必要了解一下iOS 8設(shè)備屏幕相關(guān)的信息。

1.1 iOS 8 屏幕介紹

截至2014年10月10日,主流的iOS設(shè)備屏幕至少有9種,見圖1和圖2所示。

iPhone設(shè)備屏幕比較

圖1 iPhone設(shè)備屏幕比較

iPad設(shè)備屏幕比較

圖2 iPad設(shè)備屏幕比較

更加詳細的信息見下表所述。

表1 iOS 設(shè)備屏幕分辨率

iOS 設(shè)備屏幕分辨率

1.2 iOS 8 的三種分辨率

對于普通用戶,了解表4-1所述的信息已經(jīng)足夠了;而對于設(shè)計人員和開發(fā)人員,還需要了解更深層的分辨率信息。為了解決屏幕適配問題,在一些游戲引擎中提出了3種分辨率:資源分辨率、設(shè)計分辨率和屏幕分辨率。

資源分辨率:也就是資源圖片的大小,單位是像素。

設(shè)計分辨率:邏輯上的屏幕大小,單位是點。我們在Interface Builder設(shè)計器中的單位和程序代碼中的單位都是設(shè)計分辨率中的“點”。

屏幕分辨率:是以像素為單位的屏幕大小,所有的應(yīng)用都會渲染到這個屏幕上展示給用戶。從表2可見,iPhone 6 Plus是最為特殊的設(shè)備,資源分辨率與屏幕分辨率的比例是1.15 : 1,而其他的設(shè)備比例是1 : 1。不同的人群關(guān)注的分辨率也是不同的,UI設(shè)計人員主要關(guān)注的是資源分辨率,開發(fā)人員主要關(guān)注的是設(shè)計分辨率,而一般用戶主要關(guān)注的是屏幕分辨率。

表 2 iOS 設(shè)備的三種分辨率

iOS 設(shè)備的三種分辨率

1.3 獲得 iOS 設(shè)備屏幕信息

為了屏幕適配的需要,有的時候我們需要獲得iOS設(shè)備的屏幕信息,然后根據(jù)該信息判斷是哪一種iOS設(shè)備。視圖控制器ViewController的主要代碼如下:

視圖控制器ViewController的主要代碼一

視圖控制器ViewController的主要代碼二

第①行代碼用于獲得屏幕大小,返回值是CGSize類型的。第②行代碼用于獲得設(shè)備信息,然后判斷是否為iPhone設(shè)備,其中UIDevice的靜態(tài)方法currentDevice可以獲得設(shè)備信息,UIUserInterfaceIdiom是枚舉類型,它的成員包括以下幾個。

Phone:判斷為iPhone或iPod touch設(shè)備。Objective-C版本為UIUserInterfaceIdiomPhone。

Pad:判斷為iPad設(shè)備。Objective-C版本為UIUserInterfaceIdiomPad。

Unspecified:未知設(shè)備。Objective-C版本為UIUserInterfaceIdiomUnspecified。

獲得是哪個設(shè)備后,我們還需要判斷是橫屏還是豎屏,第③行代碼用于判斷是否是豎屏情況。第④行代碼用于判斷設(shè)備是否為iPhone 5/5s/5c(iPod touch 5)等設(shè)備,第⑤行代碼用于判斷設(shè)備是否為iPhone 6 設(shè)備,第⑥行代碼用于判斷設(shè)備是否為"iPhone 6 Plus設(shè)備,第⑦行代碼判斷是否為iPhone4s等其他設(shè)備。如果設(shè)備處于橫屏情況,則只需要判斷屏幕的寬度就可以了。

讀者測試這段代碼時,可以打開本節(jié)的實例代碼ScreenTest,在Xcode選擇不同的模擬器進行測試即可,如圖3所示。

選擇不同的模擬器

圖3 選擇不同的模擬器

了解更多相關(guān)資訊,關(guān)注南昌網(wǎng)站制作公司--百恒網(wǎng)絡(luò)官方網(wǎng)站。百恒網(wǎng)絡(luò)是一家專業(yè)從事南昌網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、網(wǎng)絡(luò)營銷等服務(wù)的南昌網(wǎng)絡(luò)公司,技術(shù)過硬,經(jīng)驗豐富。如有任何網(wǎng)站方面的問題,百恒網(wǎng)絡(luò)隨時歡迎大家來電咨詢,我們專業(yè)為您解答!


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×