iOS螢幕適配

2021-07-22 18:09:11 字數 1562 閱讀 5197

一、ios螢幕適配發展歷程

裝置適配技術

4及以前(ipad未出

直接用**計算

有了ipad

autoresizing

有不同螢幕的iphone後

autolayout

有更多不同螢幕的iphone後

sizeclass

1、 直接用**計算

由於螢幕的大小都一樣,只有橫豎屏的情況,可以直接計算

2、 autoresizing
適合於控制項與其父控制項的關係

各屬性的解釋屬性

解釋uiviewautoresizingnone

不會隨父檢視的改變而改變

uiviewautoresizingflexibleleftmargin

自動調整view與父檢視左邊距,以保證右邊距不變

uiviewautoresizingflexiblewidth

自動調整view的寬度,保證左邊距和右邊距不變

uiviewautoresizingflexiblerightmargin

自動調整view與父檢視右邊距,以保證左邊距不變

uiviewautoresizingflexibletopmargin

自動調整view與父檢視上邊距,以保證下邊距不變

uiviewautoresizingflexibleheight

自動調整view的高度,以保證上邊距和下邊距不變

uiviewautoresizingflexiblebottommargin

自動調整view與父檢視的下邊距,以保證上邊距不變

3、autolayout

幫我們確定在不同裝置、不同(父view)環境下,同乙個可視單元所應具有合適的位置和尺寸(任何兩個檢視的關係都可以確定)

1. autolayout的用法:2. autolayout的好處:

4、sizeclass

在ios8中,新增了size classes特性,它是對當前所有ios裝置尺寸的乙個抽象。那我們就只把螢幕的寬和高分別分成三種情況:compact:緊湊、regular:寬鬆、any:任意。

這樣寬和高三三一整合,一共9中情況。如下圖所示,針對每一種情況。我們可以在每種情況下設定不同的布局(包括控制項的約束,甚至是控制項是否顯示)

對sizeclass的理解:

sizeclass的實質是將ios螢幕分成了不同的抽象概念,這些不同的抽象組合,對應著不同的裝置螢幕。所以,利用sizeclass可以針對同一套ui,來適配所有的螢幕。注意:這些所有的適配,都是利用autolayout來實現的,sizeclass只是負責提供不同的螢幕尺寸。

iOS 螢幕適配

螢幕適配 1 螢幕適配的發展過程 計算frame autoreszing 父控制項和子控制項的關係 autolayout 任何控制項都可以產生關係 sizeclass 沒有螢幕適配,直接使用frame固定子控制項的大小 螢幕大小一樣,但是如果進行ipad開發,就需要考慮螢幕適配 螢幕大小不一樣,需要...

iOS螢幕適配

ios的螢幕適配從純frame到autoresizingmask再到autolayout,autoresizingmask autolayout sizeclassesautoresizingmask和autolayout不相容 sizeclasses依賴autolayout autoresizin...

IOS螢幕適配

螢幕適配一直是移動端開發乙個非常蛋疼的問題,前幾天和產品狗溝通乙個android專案,它覺得這個軟體應該在任何手機上顯示的都應該是一模一樣的,一點都不能縮放,還誇下海口,哪怕只適應一種機型,然後程式猿先生只能遺憾的說,滾蛋!其實最初的時候android和ios一樣,對一些介面都是給的固定值,在iph...