iOS的布局方式可以從兩個維度來進(jìn)行選擇:
第二個維度是:代碼/storyboard或xib
用代碼寫布局方式隘竭,缺點是無法像storyboard和xib一樣直觀的顯示出來,控件的布局和約束都要用代碼寫西饵。每次改遍布局需要運行之后才可以查看改變后的樣子揉稚,再次進(jìn)行修改和約束妄呕。優(yōu)點是1潜慎、適合多人合作版本管理和追蹤 2帜乞、適合組件的復(fù)用 3司抱、復(fù)雜的,動態(tài)變化的邏輯? 4挖函、sizeClass適配等
用storyboard或xib的優(yōu)點是:可以通過拖拽來實現(xiàn)創(chuàng)建控件状植、約束控件的位置和大小浊竟、不用等運行后才可以查看頁面的布局怨喘,還可以實現(xiàn)頁面間的調(diào)轉(zhuǎn)等。缺點是:1振定、使用storyboard必怜,多個的viewcontroller都在一個storyboard中,不適合多人合作版本管理和追蹤問題 2后频、因為每個界面都需要添加對應(yīng)的控件梳庆,如果是同一個控件,在另外一個viewcontroller還是要重新添加卑惜,不適合組件的復(fù)用膏执。3、storyboard的約束相對比較簡單露久,不適合復(fù)雜的更米,動態(tài)變化的邏輯。4毫痕、不適合sizeClass適配等征峦。
第二個維度的選擇可以根據(jù)項目的大小和分工時間來選擇,如果是小項目消请,邏輯比較簡單栏笆,人員單一的時候可以使用storyboard來簡化工作量,更加方便快捷臊泰。如果是多人合作開發(fā)蛉加,分工比較細(xì)致、邏輯比較復(fù)雜的時候缸逃,用storyboard會比較復(fù)雜七婴,代碼合并沖突等問題會造成極大的工作量,此時用代碼更加方便快捷察滑,如果是組件化開發(fā)打厘,也可以使用代碼來適用組件的復(fù)用