代码之家  ›  专栏  ›  技术社区  ›  Alexa289

为什么我的导航栏是完全白色的?

  •  0
  • Alexa289  · 技术社区  · 6 年前

    enter image description here

    我想让我的大标题导航栏像上面的图片一样回到默认导航栏,上面的图片是我在iOS 12上运行应用程序时,有一个分隔线,颜色有点灰。

    但当我在iOS 13中运行这个应用程序时,如下图所示,导航栏是完全白色的,似乎没有深灰色的分隔符

    enter image description here

    我想让我的导航条在iOS 13中与iOS 12完全相同,它是一个小灰色的分隔线

    下面是我在viewwill中运行的代码:

    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
    
        navigationController?.navigationBar.prefersLargeTitles = true
        navigationItem.largeTitleDisplayMode =  .always
    }
    

    我正在使用故事板,这是我使用的设置。即使从故事板上,你也可以看到,导航栏似乎已经完全是白色的,没有分隔符 enter image description here

    1 回复  |  直到 6 年前
        1
  •  0
  •   matt    6 年前

    你看到的行为在iOS 13中是正常和正确的。在iOS13中,默认情况下,带有大标题的导航栏是, 透明的 . 这意味着它后面的主视图是白色的,并且没有阴影(您称之为“分隔符”)。你一定已经在手机上注意到了这一点;iOS13已经存在了将近一年了!苹果自己的应用程序通常都是这样的。

    如果这不是您想要的,请配置导航栏 scrollEdgeAppearance 做你自己 想要。