全屏穿透效果需要做到兩點(diǎn)
  1. tableView的可視范圍占據(jù)整個(gè)父控件(或者屏幕)--設(shè)置contentsize滾動(dòng)范圍。

  2. 所有的cell都可以被看到,也就是說(shuō)tableView中的cell不會(huì)被導(dǎo)航欄,titleView以及TabBar所遮擋--設(shè)置contentInset內(nèi)邊距。

例如:首頁(yè)控制器的view的第一個(gè)子控件是scrollView(添加子控制器視圖tableview),而且首頁(yè)控制器包裹了導(dǎo)航控制器和TabBarController,所以,scrollView的內(nèi)容上邊被擠下來(lái)64,下邊被擠上去49.

解決方案
  1. 可視范圍:

    1. 告訴系統(tǒng)不要自動(dòng)調(diào)整scrollView的內(nèi)邊距

    2. 首頁(yè)控制器:

automaticallyAdjustsScrollViewInsets = NO;

經(jīng)過(guò)這個(gè),ScrollView的內(nèi)容(tableView)確實(shí)上移了,但是還是預(yù)留了20,這個(gè)是時(shí)候通過(guò)打印知道tableView的y值是20,height = 667 - 20 = 647;
4. 設(shè)置tableView的 y = 0.
5. 設(shè)置tableView的height = scrollView.height;
這個(gè)時(shí)候就實(shí)現(xiàn)了tableView的可視范圍為整個(gè)scrollView.換句話說(shuō)tableView和scrollView完全重合.

但是
新的問(wèn)題出現(xiàn)了:新的問(wèn)題出現(xiàn)了:這個(gè)時(shí)候的tableView和scrollView完全重合,tableView中的內(nèi)容(在這里是cell,如果有tableHeaderView的話就包括tableHeaderView)和tableview完全重合.那么就會(huì)有一部分cell被導(dǎo)航控制器以及titleView擋住.當(dāng)下拉下來(lái)以后,松手就由彈上去了.內(nèi)容被遮擋.同樣底部也會(huì)被TabBar擋住

  1. 不被導(dǎo)航遮住內(nèi)容:
    解決方案:給tableView增加額外的滾動(dòng)區(qū)域,即設(shè)置內(nèi)邊距,其中上邊設(shè)置64(導(dǎo)航條高度)+35(titleView的高度),下邊設(shè)置49(TabBar高度)。具體代碼如下:

scrollView.contentInset = UIEdgeInsetsMake(64 + 35, 0, 49, 0);
   到現(xiàn)在為止完成了所有步驟:

1.通過(guò)改變tableView的frame --以及讓系統(tǒng)不要自動(dòng)調(diào)整scrollView的內(nèi)邊距讓tableView的可視范圍為占據(jù)整個(gè)scrollView

2.通過(guò)設(shè)置tableView的內(nèi)邊距,讓tableView中的所有cell都可以顯示,即往下走一個(gè)導(dǎo)航欄的高度.

以前介紹tableView的重要屬性內(nèi)邊距

1. 主要概念

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

2.
a.沒(méi)有cell
b.沒(méi)有contentInsetc.沒(méi)有tableHeaderView、tableFooterView

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

3.
a.沒(méi)有cell
b.沒(méi)有contentInsetc.有tableHeaderView、tableFooterView

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

4.
a.有cell
b.沒(méi)有contentInsetc.沒(méi)有tableHeaderView、tableFooterView

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

5.
a.有cell
b.有contentInsetc.沒(méi)有tableHeaderView、tableFooterView

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

6.
a.有cell
b.沒(méi)有contentInsetc.有tableHeaderView、tableFooterView

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

7.
a.有cell
b.有contentInsetc.有tableHeaderView、tableFooterView

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

8.
a.有cell
b.沒(méi)有contentInsetc.沒(méi)有tableHeaderView、tableFooterView
d.有額外子控件{0,-40,375,40}

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

9.
a.有cell
b.沒(méi)contentInsetc.沒(méi)有tableHeaderView、tableFooterView
d.有額外子控件{0,-40,375,40}

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

10.
a.有cell
b.沒(méi)有contentInsetc.有tableHeaderView、tableFooterView
d.有額外子控件{0,-40,375,40}

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

11.
a.有cell
b.有contentInsetc.有tableHeaderView、tableFooterView
d.有額外子控件{0,-40,375,40}

photoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)

http://www.cnblogs.com/zhangzhanwei/p/7150740.html