美文网首页
iOS11 适配navigationbar backButto

iOS11 适配navigationbar backButto

作者: 大树下的方丈 | 来源:发表于2017-09-29 13:26 被阅读78次

    原作者 http://www.jianshu.com/u/ea1477f79a5c
    原文 http://www.jianshu.com/p/232d529094aa

    升级Xcode9 后适配 iOS11 navigationbar 需要以下几个步骤


    1.如果项目中使用过 setBackButtonTitlePositionAdjustment 方法,那就把这一行注释掉。

    //[[UIBarButtonItem appearance]setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault];
    

    2.设置 backBarButtonItem,初始化 title 为空的 UIBarButtonIte,赋给self.navigationItem.backBarButtonItem。

    self.navigationItem.backBarButtonItem = [[UIBarButtonIte malloc] initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:nil];
    

    3.设置 backIndicatorImage 、backIndicatorTransitionMaskImage 的 image。该使用方法在 iOS11之前也常用。(我一直这么用,为了适配 iOS11我在现有的基础上添加了上面的俩个步骤)

    UIImage*image = [UIImageimageNamed:@"icon_back_black"];
    image = [imageimageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
    self.navigationController.navigationBar.backIndicatorImage = image;
    self.navigationController.navigationBar.backIndicatorTransitionMaskImage = image;
    

    备注:以上代码没必要每个viewcontroller都写一遍,可以利用methodswizz,写一次即可。

    相关文章

      网友评论

          本文标题:iOS11 适配navigationbar backButto

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