在使用autolayout的過程中,不論是使用IB的方式,或者是使用純code的方式,在使用autolayout的過程中,或多或少都有一些比較麻煩的東西吧。以此記錄,方便日后查看。
其實在具體使用的時候,有如下幾點比較麻煩的。
- AutoLayout+UIScrollView
- Content Compression Resistance和Content Hugging
1.AutoLayout+UIScrollView
在有些需要使用AutoLayout使用ScrollView的布局中,往往沒使用ScrollView的時候,約束一切正常,但是用ScrollView作為容器的時候,全部都是紅色的錯誤。對于有代碼潔癖的人來說那是一種怎樣的感受。
其實問題主要在于,我們以前時候code的時候,手動設置ScrollView的contentSize。但是在IB里,IB是根據內容來進行計算自己的AutoLayout的,如設置不合理,則ScrollView不能計算出自己的contentSize,導致出現紅色的錯誤。
一般我們在ScrollView內部只放一個View,用來存放具體的控件。如果想左右滑動,使ContainerView和ScrollView等高,但是ContainerView內部的具體控件需要能計算出實際的寬度。反之如果上下滑動,只需要等寬,有具體高度就可以了。
Paste_Image.png