ios Push界面的时候导航栏右面变黑一块

push界面的时候,导航栏navigationBar 突然变黑了一块之后恢复。其实仔细检查不难发现,颜色是Window的颜色突然间闪出来一次。


ios Push界面的时候导航栏右面变黑一块_第1张图片
问题

此时如果你改变window的颜色你会发现真相大白。
但是,是什么原因导致的呢!因为代码不多,所以找起来发现
当你push界面不想要tab的时候自然谢了VC.hidesBottomBarWhenPushed = YES(true)
而且你因为导航栏是半透明导致的。
解决方法一:ViewController 继承一个父类ViewController 里面可以写

 self.navigationController?.navigationBar.isTranslucent = false

之后你

VC.hidesBottomBarWhenPushed = YES(true)

没有关系了
方法二:也可以继承一个父类(如果你用这个方法的话一定看到最后)

   override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(true)
        self.tabBarController?.tabBar.isHidden = true
    }
    override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(true)
        self.tabBarController?.tabBar.isHidden = false
    }

但是这样的话首页就没有标签栏了,你自然会想到首页不继承此父类不就得了!

但是我告诉你,我不知道你们是否遇到过,但是我出现了困扰我1个月的问题,那就是在首页TableView 嵌套Collection多次点击标题就是空白处,会出现界面卡死的问题,后来发现是因为不继承一个父类导致的。其实就是我觉得你不写这些嵌套不久你也会发现这些怀疑人生的问题,

所以如果你喜欢半透明只能乖乖在每个界面写方法二了。。。

如果还有别的原因请告诉我谢谢。。
有问题也嘴下留情。。
告诉我就好我会谢谢你的。

你可能感兴趣的:(ios Push界面的时候导航栏右面变黑一块)