隨著蘋果設(shè)備不同版本屏幕的增多疾捍,自動(dòng)適配已經(jīng)成為一種不可或缺的形式奈辰,雖然之前也簡(jiǎn)單的使用過(guò),但是總覺(jué)得里邊的東西會(huì)很多很多乱豆,索性好好研究一下奖恰。本系列博文就是在學(xué)習(xí)過(guò)程中的一些摘抄和總結(jié),希望能讓自己盡快掌握該技術(shù)的原理以及相應(yīng)的開發(fā)宛裕。
前言
Auto Layout重新構(gòu)思了開發(fā)者創(chuàng)建界面的方式瑟啃。它創(chuàng)建了一個(gè)靈活、強(qiáng)大的系統(tǒng)揩尸,來(lái)描述視圖和它們的內(nèi)容是如何相互關(guān)聯(lián)的蛹屿,它們和它們所占據(jù)的窗口和父視圖是如何關(guān)聯(lián)的。
Auto Layout的優(yōu)點(diǎn)
1.它是聲明的疲酌。表達(dá)界面的時(shí)候不用擔(dān)心這些規(guī)則是如何實(shí)現(xiàn)的蜡峰。只要描述這個(gè)布局就可以了了袁,可以讓Auto Layout來(lái)計(jì)算frame。
2.它是描述性的和相關(guān)性的湿颅。你需要描述其在屏幕上是如何相互關(guān)聯(lián)的载绿,可以忘掉尺寸和位置,重要的只是關(guān)系油航。
3.它是集中的崭庸。無(wú)論在IB還是在你的代碼里的布局區(qū)域,Auto Layout規(guī)則傾向于遷移到一個(gè)簡(jiǎn)單的關(guān)系谊囚,使它更易于檢查和調(diào)試怕享。
4.它是動(dòng)態(tài)的。你的界面會(huì)在需要響應(yīng)用戶和源自應(yīng)用的改變時(shí)而更新镰踏。
5.它是可本地化的函筋。使用Auto Layout可以征服世界,它在維護(hù)界面完整性時(shí)奠伪,適應(yīng)不同的單詞和詞組長(zhǎng)度跌帐。
6.它是表達(dá)性的。你可以描述必能在舊的spring-strut系統(tǒng)中更多的關(guān)系绊率。不只是“吸附這條邊”或者“沿著這個(gè)坐標(biāo)軸改變尺寸的大小“谨敛,他可以表示一個(gè)視圖關(guān)聯(lián)到另一個(gè)視圖的方式,而不僅僅是它的父視圖滤否。
7.它是增量式的脸狸。可以根據(jù)自己的時(shí)間表來(lái)使用它藐俺,可以添加它炊甲,將它作為用用和界面的一部分,或者將其作為一個(gè)完整的Auto Layout經(jīng)歷紊搪。Auto Layout提供向后兼容蜜葱,是你可以使用所有的spring和strut、所有約束或者兩者混合耀石,來(lái)創(chuàng)建自己的界面牵囤。
一、Auto Layout介紹
Auto Layout旨在取代原來(lái)基于spring和strut的Autosizing系統(tǒng)滞伟,它是一種全新的系統(tǒng)揭鳞,用來(lái)構(gòu)建視圖之間的關(guān)系,指定視圖與其父視圖之間以及視圖與視圖之間的關(guān)系梆奈。