淺談autoresizing和autolayout的區(qū)別以及注意事項

1、autoresizing:

autoresizing使用用來描述 父控件與子控件之間的關(guān)系,而不能描述同級控件或者非父子控件關(guān)系的其他級控件約束關(guān)系。

通過6根線來描述約束關(guān)系。默認為 上左反向的線。表示上、左與父控件間距不變。其他方向和寬高自由。(隨父控件變化而變化)。

這6根線搞明白,基本autoresizing就懂了。這里就不一一解釋啦。

現(xiàn)在一般情況不使用autoresizing了。

使用注意事項:在使用Xib或者SB時,Xcode默認是autolayout。需要取消勾選。在尺寸檢測器中,就可以直接設(shè)置。

在代碼創(chuàng)建過程中,Xcode默認是autoresizing。 直接設(shè)置就好啦。

當約束確定后可以修改frame。


2、autolayout :

autolayout 不僅可以描述子父控件關(guān)系,也可以描述同級以及其他級的控件約束關(guān)系。

具體使用,就在如圖的位置設(shè)置就好。多的我也不說啦。

使用注意事項:在Xib和SB的情況下應(yīng)該不會出現(xiàn)太多的問題,除非約束設(shè)置錯誤。

在代碼創(chuàng)建的時候,約束添加到哪里這個很重要,記住一個原則除了自身屬性約束,其他約束都加在“共同父控件”中。大概解釋一下這個“共同父控件”。意思就是:如果A->B->C ,D->E->C 。A和D的共同父控件就為C。

在或者:A->B->C. A和B的共同父控件是C。 這樣大概意思應(yīng)該是差不多了。

還有一個就是因為代碼創(chuàng)建時,Xcode默認是autoresizing,說以需要關(guān)掉做約束對象控件的Autoresizing。

重點:當使用autolayout布局完成后不能直接修改控件的Frame,可以通過設(shè)置該控件使用autoresizing。

self.myScroll.translatesAutoresizingMaskIntoConstraints = YES;? 然后再去修改frame。

Masnory的使用和Autolayout的注意是一致的。

布局這一塊有一個大坑,最近可能會更一個關(guān)于scrollView的布局問題。

mark一下:http://blog.csdn.net/abelyulbb/article/details/52296173

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 iPhone自誕生以來,隨著其屏幕尺寸不斷的多樣化,屏幕適配的技術(shù)一直在發(fā)展更新。目前,iOS系統(tǒng)版本已經(jīng)更...
    VV木公子閱讀 15,617評論 24 170
  • 1.尺寸適配1.原因 iOS7中所有導(dǎo)航欄都為半透明,導(dǎo)航欄(height=44)和狀態(tài)欄(height=20)不...
    LZM輪回閱讀 6,384評論 1 4
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,161評論 4 61
  • 就是那個冬天,鄒天鳴第一次邁進了她家的門,端起她家的碗,喝了父親一直沒有舍得喝的酒。那天父親也很興奮,和天鳴喝得尤...
    da7231f392c4閱讀 367評論 0 2
  • 金黃, 乘一片落葉飄來, 悠悠灑灑, 撞開你的心懷。 多愁善感, 恰似與生俱來, 把它夾進書頁, 陪著你一起感嘆時...
    伊凡軒閱讀 190評論 0 0

友情鏈接更多精彩內(nèi)容