問題描述:
問題1:當一個navigation導航進入到UITabBarController TabBar裡面有多個頁面,頁面下有tableView,當我進入Tableview的時候,上面兩行table給擋住了,當我點擊進去返回回來又沒有可以看得見了,發現table向上的是44PT剛好是一個top bar 的位置。(但是從這個頁面的父頁面push到這個頁面還是被擋住了,但是我從這個頁面的子頁面pop出來又不會被擋住)
問題2: 做UISearchBar,UISearchDisplayController時遇到了一個問題,在點擊搜索欄時陰影部分的位置出現偏差
- (void)viewDidLoad { [super viewDidLoad]; //self.automaticallyAdjustsScrollViewInsets = NO; self.edgesForExtendedLayout = UIRectEdgeNone; }
在iOS 7中,蘋果引入了一個新的屬性,叫做[UIViewController setEdgesForExtendedLayout
:],它的默認值為UIRectEdgeAll。當你的容器是navigation controller時,默認的布局將從navigation bar的頂部開始。這就是為什麼所有的UI元素都往上漂移了44pt。
修復這個問題的快速方法就是在方法- (void)viewDidLoad
中添加如下一行代碼:
self.edgesForExtendedLayout = UIRectEdgeNone;
這樣問題就修復了。
以上所述是小編給大家介紹的iOS中UITableview錯位的問題修復方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對本站網站的支持!