导航条透明,ios11系统,会出现偏移64的问题

在当前页面加入下面方法
- (void)viewWillAppear:(BOOL)animated{
    [super viewWillAppear:animated];
    [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
    //去掉导航栏底部的黑线
    self.navigationController.navigationBar.shadowImage = [UIImage new];
}
如果仅设置当前页导航透明,需加入下面方法
- (void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
    [self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
    [self.navigationController.navigationBar setShadowImage:nil];
}

 

----------------------注意下面的 iOS11 坑----------------------

 

//iOS11,偏移64问题

    if (@available(iOS 11.0, *)) {

        self.circleTableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;

    } else {

        self.automaticallyAdjustsScrollViewInsets = NO;

    }

posted @ 2018-09-05 11:28  偶阵雨ss33  Views(429)  Comments(0Edit  收藏  举报