美文网首页
iOS12 EachNavigationBar导航栏操作出现黑边

iOS12 EachNavigationBar导航栏操作出现黑边

作者: kingjiajie | 来源:发表于2019-05-24 00:14 被阅读0次

    EachNavigationBar 是一个能够自定义iOS导航栏的开源插件。

    源码托管在github上,大家可自行搜索查看。本文就不贴链接了。

    EachNavigationBar 功能能够支撑日常使用,支持大标题等功能。

    上一篇博文也提及到EachNavigationBar使用中遇到的一些问题:

    EachNavigationBar 导航栏颜色与给定颜色不相同设定

      笔者在后续使用中,有发现一个新的问题,push和pop跳转的时候,页面在出现和消失的动画开始前,导航栏的右上角会出现短暂的黑色阴影。

    这个问题在使用EachNavigationBar时候会出现,甚至使用原生导航栏也会出现。

      当笔者在页面隐藏 导航栏的时候,进行push和pop操作,push到的页面设置显示导航栏的, 在此情况下push和pop,黑色阴影没有出现。

    然后笔者做了一些操作,查看究竟什么地方出现该问题。

    大家看到这里,应该也看到黑边的样子了。在操作的时候会出现右侧黑框。


    解决办法: 

      临时解决办法。

    将nav_bar设置成不透明 

    navigation_bar.translucent=NO;

    效果如下:

    还有第二种方法:

    - (void)viewWillDisappear:(BOOL)animated{

        [super viewWillDisappear:animated];

        [self.navigationController setNavigationBarHidden:NO animated:NO];

    }

    - (void)viewWillAppear:(BOOL)animated{

        [super viewWillAppear:animated];

        [self.navigationController setNavigationBarHidden:YES animated:YES];

    }

    还有第三种隐藏方法:

      但是不是每个人都适用,有点欺骗性,哈哈,你们可以按照你们的项目自行选择。

     ------ 直接在appdelegate里面的didFinishLaunchingWithOptions方法里面设置window的背景颜色

      self.window.backgroundColor = [UIColor whiteColor];

    最后其实还有一种方案:

      就是在GitHub上,有一个算是全自定义的导航栏,而且该导航栏也支撑大标题、滑动缩减等功能, Star已有2K左右了,名字我这就不贴上来了。大家可自行搜索,很容易搜索出来的。

    相关文章

      网友评论

          本文标题:iOS12 EachNavigationBar导航栏操作出现黑边

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