Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 导航标题栏出现故障,返回时显示灰色背景_Swift_Uinavigationcontroller_Uinavigationbar - Fatal编程技术网

Swift 导航标题栏出现故障,返回时显示灰色背景

Swift 导航标题栏出现故障,返回时显示灰色背景,swift,uinavigationcontroller,uinavigationbar,Swift,Uinavigationcontroller,Uinavigationbar,此gif将帮助您了解我的问题: 在我的一些导航控制器上,我以前从未遇到过这个问题,调试这个问题很困难 复制步骤:克隆或复制 创建新项目 将现有viewcontroller嵌入选项卡栏控制器中 在导航栏控制器中嵌入相同的viewcontroller 在情节提要中添加新的viewcontroller 在新的viewcontroller上,轻触按钮上的隐藏底部栏(这会导致问题) 在第一个viewcontroller上添加一个按钮,该按钮将显示新的viewcontroller。现在我们有问题了 我正在

此gif将帮助您了解我的问题:

在我的一些导航控制器上,我以前从未遇到过这个问题,调试这个问题很困难

复制步骤:克隆或复制

  • 创建新项目
  • 将现有viewcontroller嵌入选项卡栏控制器中
  • 在导航栏控制器中嵌入相同的viewcontroller
  • 在情节提要中添加新的viewcontroller
  • 在新的viewcontroller上,轻触按钮上的隐藏底部栏(这会导致问题)
  • 在第一个viewcontroller上添加一个按钮,该按钮将显示新的viewcontroller。现在我们有问题了

  • 我正在运行Xcode 10和swift 4.2,这是因为您的导航栏是半透明的,并且在导航栏下显示了部分控制器。您的顶部控制器中有一个地图,当您向后导航时,它会在导航栏下为其设置动画,这就是闪烁的原因

    要仅在一个控制器中更改导航栏的半透明效果,需要将此添加到viewDidLoad方法中:

    navigationController?.navigationBar.isTranslucent = false
    
    或者,如果您希望全局更改,请将此添加到应用程序委托中的didFinishLaunchingWithOptions方法:

    UINavigationBar.appearance().isTranslucent = false
    

    大概你正在用导航栏做一些不寻常的事情-子类化?自定义背景?还有别的吗?@AshleyMills我添加了一条复制路径,我想我没有做任何奇怪的事情。。。