在做自動布局之前首先大家都知道一個自動布局劣欢,自動布局在我理解就是為了適配任何的屏幕蟀给。每一個控件的自動布局都是為了確定這個控件的位置,但是一個控件的位置確定是需要四個條件,就是她的上下左右以及寬度和高度以及水平居中垂直居中等系列的條件決定一個控件的位置妹孙;下面我們就以在iOS開發(fā)中被廣大開發(fā)者認(rèn)為是“刺頭”的ScrollView為例來說明一下ScrollView的布局余寥;首先我們新建一個工城叫做ScrollView的自動布局:
首先我們在storyboard中添加一個scrollView然后設(shè)置背景顏色都是紅色蚤假;
現(xiàn)在運(yùn)行項目:
我在scrollView上添加了三個子控件我并且為啥那個子控件都設(shè)置了自動布局但是依然報錯溉仑,每一個子控件都有距離上面和左面還有自己的寬度和高度但是依然報錯,不是小編的設(shè)置有問題局服,即使運(yùn)行之后控件也不能滑動钓瞭,我在控制器中設(shè)置了自己scrollView的contentsize之后能滑動但是布局還報錯!原因:scrollView不知道自己的contentoffset所以才會報錯腌逢,下面小編就把自己對scrollView的自動布局跟大家分享一下吧降淮!首先小編就把那些剛才弄的那些小控件給刪除了啊!要想利用storyboard來直接設(shè)置Contentsize只需要在scrollView上面添加一個占位視圖下面我給大家演示一下:
我們給scrollView中添加一個唯一的子控件以后再scrollView上添加的任何東西都加載這個唯一的子控件上面佳鳖,但是有一個問題就是我給這個唯一的子控件設(shè)置約束是距離scrollView都是零但是還是沒有設(shè)置scrollView的contentsize其實這個有一個不符合規(guī)則的就是當(dāng)你設(shè)置那樣的約束之后霍殴,大家都認(rèn)為不能給那個給那個唯一的子控件設(shè)置高度呢!其實在給這個唯一的子控件設(shè)置高度就是scrollView的contentsize系吩,但是做到這一步還有一個問題那個布局依然報錯来庭,原因是你還需要設(shè)置這個唯一的子控件的水平或豎直方向居中,因為這樣你就可以確定scrollView的滾動情況按┌ぁ月弛!當(dāng)你設(shè)置完成之后scrollView的布局你就直接可以用Storyboard布局啦!因為我這個是豎直滾動翱剖ⅰ帽衙!
當(dāng)你想讓SCrollView水平滾動的時候只需給那個唯一的子控件設(shè)置寬度以及豎直居中就OK!
scrollView的自動布局不依靠代碼直接在XIB或者storyboard中就可以完成了贞绵!希望對大家有用厉萝!