項(xiàng)目介紹:直接上圖說明。
效果圖:
說明圖:
詳細(xì)說明:搜索框不用多說瓢阴,固定在最頂部况木,高度固定為44.下面為菜單欄垒拢,高度為屏幕寬的四分之一,在做這個(gè)菜單欄的布局時(shí)火惊,先放一個(gè)承載四個(gè)按鈕的view求类,然后在view上放四個(gè)一樣大的按鈕,在這里利用控件布局的寬高比約束就可以輕松完成矗晃。接著下面就是放一個(gè)scrollView,占滿剩余的空間仑嗅。接著在scrollView里放一個(gè)tableView,和scrollView的frame(注意:是和frame一樣大,不是scrollView的contentSize仓技。就是占滿剩余的空間)一樣大鸵贬。這時(shí)約束就會(huì)報(bào)錯(cuò),接著玩下看脖捻。阔逼。。地沮。
這個(gè)是菜單欄的布局
這個(gè)也是菜單欄的布局
在沒往scrollView里放tableView時(shí)沒有報(bào)約束錯(cuò)誤嗜浮,接著我拖一個(gè)tableView進(jìn)去
// 僅僅是拖一個(gè)tableView放到scrollView里,不做任何操作摩疑,出現(xiàn)約束錯(cuò)誤
// 約束錯(cuò)誤截圖危融。兩個(gè)約束的意思就是scrollView存在不明確的contentSize。
下面雷袋,我們來解決scrollView的contentSize問題吉殃。
首先:為scollView添加一個(gè)承載scrollView內(nèi)部控件的View.暫時(shí)先忽略那個(gè)tableView,后面會(huì)對(duì)其進(jìn)行布局
做到這里,我們理清一下我們的思緒:scrollView存在一個(gè)frame楷怒,但是contentSize未確定蛋勺,scrollView里的View也存在一個(gè)frame,而scrollview的contentSize是由其內(nèi)部的控件大小決定的鸠删。所以我們現(xiàn)在給定View的寬度和高度就可以了抱完。
現(xiàn)在scrollView的contentSize大小和scrollView自身的Size一樣大,因此刃泡,還是不能滾動(dòng)巧娱,我所負(fù)責(zé)的項(xiàng)目是可以左右滑動(dòng),四個(gè)屏幕的寬度捅僵,所有更改view的寬度高度即可家卖。
到這里,約束總算沒問題了
接下來庙楚,對(duì)tableview進(jìn)行布局上荡,scrollView里的控件全部放到View視圖里面,在這里注意要把view設(shè)置為clearColor.這里把tableview的寬度設(shè)置為view的四分之一馒闷。