美文网首页
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