方案一
在使用了navigationController后塘偎,當(dāng)界面進(jìn)行跳轉(zhuǎn)往返后蝶锋,時(shí)而會(huì)出現(xiàn)tableView上移的情況亚侠,通常會(huì)自動(dòng)上移64個(gè)像素,那么這種情況厅瞎,我們可以關(guān)閉tableView的自動(dòng)適配布局饰潜。
self.automaticallyAdjustsScrollViewInsets = NO;// 默認(rèn)是YES
方案二:
當(dāng)出現(xiàn)tableView整體上移時(shí),你當(dāng)然可以在 Xcode 中修改每個(gè) View,將他們下移20個(gè)像素(狀態(tài)欄高度)或者64個(gè)像素(狀態(tài)欄+導(dǎo)航欄高度)和簸。
但是蘋果顯然已經(jīng)考慮到這個(gè)問題彭雾,他們早在 iOS 7 SDK 中為 ViewController 提供了一個(gè) edgesForExtendedLayout 新屬性。如果你將這個(gè)屬性設(shè)置為UIRectEdgeNone锁保,則 viewController 的所有子視圖都會(huì)自動(dòng)調(diào)整薯酝。
目前暫時(shí)也適用于不同系統(tǒng)版本代碼更迭出現(xiàn)狀況時(shí)使用半沽。
self.edgesForExtendedLayout = UIRectEdgeNone;// 推薦使用