美文网首页
iOS UIScrollView在导航栏下位置自动偏移的解决方

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

作者: 左岸花不开 | 来源:发表于2017-05-11 16:47 被阅读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; 
}
}

相关文章

网友评论

      本文标题: iOS UIScrollView在导航栏下位置自动偏移的解决方

      本文链接:https://www.haomeiwen.com/subject/ejootxtx.html