美文网首页
关于iOS导航栏透明度的问题

关于iOS导航栏透明度的问题

作者: PKL | 来源:发表于2019-07-27 23:40 被阅读0次

    一直以来都没有特别细致的去处理导航栏问题,今天有个小需求,导航栏一开始透明,随着scrollView滚动而变为变色,本来想着这就是一个很简单的问题,无非是:

    //设置导航栏背景图片为一个空的image,这样就透明了

            UIImage*image = [[UIImagealloc]init];

            [self.navigationController.navigationBar setBackgroundImage:image

                                                          forBarMetrics:UIBarMetricsDefault];

            //去掉透明后导航栏下边的黑边

            [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]];

    这么简单的代码,但是实际这么做了却发现导航栏变成了很色。

    于是开始思考,只要不是通过创建一个图片对象来做导航栏透明色,而用barTintColor变成别的颜色都是正常的,难道是因为导航栏透明度问题?于是乎加了这句代码:

    self.navigationController.navigationBar.translucent = YES;

    就解决了。

    如果是透明的导航栏图片,那么导航栏本身也得是可透明的。

    相关文章

      网友评论

          本文标题:关于iOS导航栏透明度的问题

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