iOS UIScrollView在导航栏下位置自动偏移的解决方

2017-05-11  本文已影响707人  左岸花不开

只要scrollView是其父视图上的第一个子视图,且navigationBar不隐藏的情况下,添加到scrollView里的视图,都会默认下移64个像素。继承UIScrollview的UITableview也会出现这个问题。
解决办法:

最笨的方法:在scrollView之前加一个高度为0.1f的view来让scrollView成为第二个view或者手动调节尺寸与位置。

 vc.automaticallyAdjustsScrollViewInsets = NO;

tableViewController中:

self.automaticallyAdjustsScrollViewInsets = NO; 
self.tableView.contentInset = UIEdgeInsetsMake(44, 0, 0, 0);

//在所有的 viewController 里都加上这样所有设备下都是固定64的位置开始。

- (void)viewDidLoad { 
[super viewDidLoad];
 // Do any additional setup after loading the view.
 // 设置CGRectZero从导航栏下开始计算
 if ([self respondsToSelector:@selector(setEdgesForExtendedLayout:)]) 
{ 
self.edgesForExtendedLayout = UIRectEdgeNone; 
}
}
上一篇下一篇

猜你喜欢

热点阅读