關(guān)于AutoLayout

因?yàn)槲乙彩莿倢W(xué)一兩個(gè)月,會(huì)的也不是太全皇忿,不過(guò)對(duì)于用Autolayout布局也算是有些心得了畴蹭。
????首先是storyboard底下那個(gè)W 和H的。鳍烁∵督螅看到了嗎?就是點(diǎn)一下之后彈了個(gè)可以點(diǎn)9個(gè)格子的東西幔荒。
????那個(gè)就代表著你寫的APP是給怎樣的屏幕用的糊闽,然后你將會(huì)在這類型的屏幕上做布局。所以說(shuō)是怎樣的屏幕呢爹梁?唔...其實(shí)他都有寫的右犹,我就偷懶了,不一一描述了姚垃。

![舉個(gè)栗子](http://upload-images.jianshu.io/upload_images/705264-0f770c93cff323ea.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)

我舉了其中兩種栗子來(lái)說(shuō)念链。
第一種是wChR。 他下面有描述积糯,就是所有的iPhone的豎屏情形掂墓,也就是說(shuō)你是用這個(gè)屏幕做布局是在iPhone豎屏下做布局。
第二種是wRhA看成。描述說(shuō)的就是所有均勻?qū)挾鹊牟季志啵热鏸Pad的橫屏或者豎屏。
簡(jiǎn)單地說(shuō)绍昂,你要是開發(fā)iPhone的豎屏啦粹,那么就選第一種,基本就沒(méi)問(wèn)題啦窘游。
---------------------華麗的分割線-------------------------

然后就是 SB右下角那3個(gè)布局功能啦

1唠椭、對(duì)齊功能 -----align約束


Align

依次說(shuō)功能哈,英語(yǔ)好的就可以忽視了忍饰。

首先最上面的4+3贪嫂,也就是前7個(gè),對(duì)于單個(gè)View或者說(shuō)單個(gè)控件來(lái)說(shuō)是不能使用的艾蓝,聽(tīng)完他們功能就知道為什么了力崇,第一個(gè)到第四個(gè)(Leading ~ Bottom)分別就是左斗塘、右、上亮靴、下4個(gè)邊界的對(duì)齊馍盟。那你覺(jué)得如果只有一個(gè)控件你能怎么對(duì)齊呢?所以這4個(gè)用法是你同時(shí)框住幾個(gè)控件茧吊,然后勾上這個(gè)對(duì)齊贞岭,那么你選中的幾個(gè)控件就會(huì)在對(duì)應(yīng)的邊界對(duì)齊了。另外搓侄,其實(shí)常用的還有一種方法瞄桨,就是對(duì)其中一個(gè)控件按住control拖到另一個(gè)控件上放開,選擇LeadingTrailingTopBottom這四個(gè)選項(xiàng)對(duì)應(yīng)的就是這4個(gè)功能讶踪。
????中間3個(gè)跟前四個(gè)用法相似芯侥,功能不同,分別是水平中心線對(duì)齊乳讥,垂直中心線對(duì)齊柱查,和基線對(duì)齊,這個(gè)基線是可以自己設(shè)置哪條為基線的云石。
????最下面2個(gè)物赶,單個(gè)控件或者視圖也可以使用,因?yàn)樗麄兊墓δ苁鞘堑哪氵x中的這個(gè)控件或視圖在它所在的View中水平居中或者垂直居中留晚,其實(shí)也就是水平中心線對(duì)齊和垂直中心線對(duì)齊,只不過(guò)與他們對(duì)齊的對(duì)象是它的父視圖而已告嘲!

2错维、固定功能 -----pin約束

pin

固定功能,意思就是用來(lái)固定你這個(gè)視圖或控件的橄唬,第一個(gè)上下左右分別填4個(gè)參數(shù)的就是和最近的控件或視圖的距離赋焕,比如說(shuō)左邊填了5,那么意思是如果你左邊有個(gè)控件仰楚,那么你選的這個(gè)控件的左邊界距離左邊那個(gè)控件的右邊界距離為5pt隆判,是不是很繞?慢慢想想吧~記住那個(gè)紅色虛線點(diǎn)了才會(huì)生效哦僧界。另外下面有個(gè)margins選項(xiàng)侨嘀,有沒(méi)有你們?cè)囋嚲椭懒耍褪菚?huì)多一段間隔出來(lái)的捂襟,雖然很多人都說(shuō)他是魔法margin咬腕,但是我目前還幾乎沒(méi)用過(guò)。還有待以后發(fā)掘他的好處了葬荷。
????然后就是本視圖或控件的定寬和定高涨共。添加了這兩個(gè)約束就會(huì)定長(zhǎng)了纽帖。
????接下來(lái)的2個(gè)需要多個(gè)控件或視圖一起用,跟之前的對(duì)齊一樣举反,他們分別是等寬和等高(這個(gè)在一行有幾個(gè)等寬視圖的時(shí)候用很好用哦)
????再接下來(lái)的Aspect Ratio懊直, 這個(gè)也就是等比,添加之后這個(gè)視圖的長(zhǎng)寬就會(huì)以你設(shè)定的值來(lái)顯示了火鼻。(比如用在一些imageView上室囊,服務(wù)器傳來(lái)的圖片是16:9的,那你的IV就也要16:9啦不然拉伸后可能就不太好看啦)
????接下來(lái)這個(gè)是對(duì)齊功能凝危,和第一個(gè)是一樣的~

Resolve

3波俄、重新處理功能 ----- Resolve Autolayout Issue
????這個(gè)意思很明顯的,第一個(gè)更新視圖框架蛾默,也就是說(shuō)在你設(shè)置完約束之后你的視圖可能是在左邊懦铺,但是約束會(huì)讓他在右邊,然后就會(huì)出現(xiàn)右邊有個(gè)橙色虛線的框框


比如這樣支鸡!

比如上圖這樣冬念,你一開始拖下來(lái)的控件在這里,也就是你看到的位置牧挣,但是你添加完約束之后急前,他實(shí)際位置應(yīng)該是橙色虛線框框那里的,那這是你選擇update frame之后你看到的這個(gè)控件就會(huì)去到橙色虛線那里瀑构,然后虛線會(huì)沒(méi)了裆针,不僅虛線,所有橙色線都會(huì)沒(méi)了寺晌,因?yàn)槟憧吹降目丶呀?jīng)和實(shí)際約束設(shè)定的位置重合了世吨。
????第二個(gè)就是更新約束,他會(huì)根據(jù)你現(xiàn)在看到的位置來(lái)添加約束并且固定他呻征,這個(gè)一般很少用耘婚,因?yàn)槲幢貢?huì)添加到你想要的約束哦。
????第三個(gè)也是自動(dòng)添加漏掉的約束陆赋,因?yàn)榧s束一定要用完全沐祷,也就是一定要讓這個(gè)視圖“有存在感”,舉個(gè)例子吧攒岛,你拖下來(lái)一個(gè)View赖临,然后只給他添加2個(gè)約束,一個(gè)是距離左邊界5灾锯,一個(gè)是距離右邊界5思杯,那上下呢?只有這兩個(gè)約束能固定住這個(gè)View嗎?顯然不能色乾,那么這樣的約束就是錯(cuò)誤的誊册。所以這個(gè)Add Missing 約束,就是可以添加缺少的約束暖璧。然后固定他案怯,但是也未必是你想要的哦。
????第四個(gè)是用他建議的約束澎办。
????第五個(gè)是清楚所有約束嘲碱。

---------------------華麗的分割線-------------------------

總結(jié):

你設(shè)置的約束必須具備兩個(gè)功能。
????????1局蚀、確定該視圖的位置
????????2麦锯、確定該視圖的大小
????但是要注意約束的沖突,比如你設(shè)定了2:1的等比約束琅绅,又對(duì)他設(shè)置300寬400高扶欣,那會(huì)報(bào)錯(cuò)的。
????然后剩下的就是多聯(lián)系布局了千扶,相信你很快可以熟練運(yùn)用Autolayout料祠!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市澎羞,隨后出現(xiàn)的幾起案子髓绽,更是在濱河造成了極大的恐慌,老刑警劉巖妆绞,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件顺呕,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡括饶,警方通過(guò)查閱死者的電腦和手機(jī)塘匣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)巷帝,“玉大人,你說(shuō)我怎么就攤上這事扫夜±闫茫” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵笤闯,是天一觀的道長(zhǎng)堕阔。 經(jīng)常有香客問(wèn)我,道長(zhǎng)颗味,這世上最難降的妖魔是什么超陆? 我笑而不...
    開封第一講書人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上时呀,老公的妹妹穿的比我還像新娘张漂。我一直安慰自己,他們只是感情好谨娜,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開白布航攒。 她就那樣靜靜地躺著,像睡著了一般趴梢。 火紅的嫁衣襯著肌膚如雪漠畜。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,631評(píng)論 1 305
  • 那天坞靶,我揣著相機(jī)與錄音憔狞,去河邊找鬼。 笑死彰阴,一個(gè)胖子當(dāng)著我的面吹牛瘾敢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播硝枉,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼廉丽,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了妻味?” 一聲冷哼從身側(cè)響起正压,我...
    開封第一講書人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎责球,沒(méi)想到半個(gè)月后焦履,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡雏逾,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年嘉裤,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片栖博。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡屑宠,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出仇让,到底是詐尸還是另有隱情典奉,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布丧叽,位于F島的核電站卫玖,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏踊淳。R本人自食惡果不足惜假瞬,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧脱茉,春花似錦剪芥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至虚吟,卻和暖如春寸认,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背串慰。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工偏塞, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人邦鲫。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓灸叼,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親庆捺。 傳聞我的和親對(duì)象是個(gè)殘疾皇子古今,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容