標籤:out androi tracking line asc 概念 library blog 旋轉
市場上的android手機五花八門。各種尺寸的螢幕讓android程式員們比較頭疼。
也有一些大神寫了一些部落格提出了自己的觀點。iOS貌似也迎來了大屏6+,因此螢幕適配的問題也是有滴,因此蘋果也有自己的方法-auto Layout 。
本人初學iOS。今天學了自己主動布局。在學習的過程中,畢竟還是有些知識點沒有接觸到的,因此寫這篇部落格來深入的瞭解一下Auto Layout。
官方解釋:
Auto Layout 是一個系統,能夠讓你通過建立元素之間關係的數學描寫敘述來布局應用程式的使用者介面。——《Auto Layout Guide》
Auto Layout 是一種基於約束的。描寫敘述性的布局系統。——《Taking Control of Auto Layout in Xcode 5 - WWDC 2013》
我們給布局添上約束 (Constraints)來給控制項定位和控制大小。而不是像android和html5一樣通過size等屬性來控制布局。iOS控制項貌似沒有size概念,而是全然通過constraints來控制大小。
開啟storyboard。我在頂部和底部拖了兩個控制項。看圖一目瞭然。右邊iPhone4底部控制項看不到了。iPhone6+控制項已經偏出。
接下來來看怎樣解決,先看張圖:
1、選中view controller
2、按住ctrl鍵。往上拉,選中 Top Space to Top Layout Guide
此時我們看到的線已變成orange顏色,說明加入的約束不夠。繼續往左和右邊拉。
3、顏色變成綠色就算好了。
4、底部的控制項一樣加入約束。
測試結果:
適配成功。
總結:
直接說以後都應該使用storyboard+autolayout感覺是不負責的說法,可是深入思考autolayout是非常有必要的!
例如以下情況使用autolayout會有協助:
當須要展示的內容非常多而且尺寸不固定;
程式需支援旋轉螢幕(主要是iPad程式。iPhone程式橫屏的情境有點非主流,也不排除..手遊..);
但storyboard中使用autolayout有利有弊。優點當然是可視化,實現簡易功能非常節省時間,但也有弊端,比如不小心移動一個控制項就會讓弄亂那些約束
iOS螢幕適配方案-Auto Layout