【问题标题】:Navigationbar change (sometimes) position导航栏更改(有时)位置
【发布时间】:2016-11-26 08:55:32
【问题描述】:

我的导航栏位置有问题。

有时在随机手机上的随机视图中,我的导航栏位置不正确。它应该低大约 30-35 像素。

愚蠢的是我无法重现该错误。当手机在后台有很多进程时,似乎出现了该错误。

背后的逻辑:我的初始视图是一个容器视图。这个容器视图实现了一个导航视图控制器。我无法改变这一点,因为我承担了这个项目。如果不是必须,我不想改变基本结构。

我知道这对你来说就像一个千里眼,因为我无法提供更多信息。我希望我能...

但也许您知道如何将导航设置在固定位置?或者你知道这种错误并且已经修复了? 我很感谢一些想法。

更新 谢谢你的答复。

我实现了这段代码,我不能说它是否有效,因为我的错误并不总是出现。我们会看到,我会尽快回复。

 func fixPositionOfNavigationBar() {

    self.edgesForExtendedLayout = .Top
    self.extendedLayoutIncludesOpaqueBars = true

    if let navigationBar = self.navigationController?.navigationBar {
        positionForBar(navigationBar)
    }
}

当我知道我要搜索的内容时,我发现了与我类似的问题。也许它会有所帮助: One possible solution Snd possible solution

【问题讨论】:

    标签: ios swift user-interface uinavigationbar


    【解决方案1】:

    尝试通过以下方式使视图控制器符合UIBarPositioningDelegate 协议:

    func positionForBar(bar: UIBarPositioning) -> UIBarPosition  {
      return UIBarPosition.TopAttached
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-03
      • 2013-12-21
      • 2016-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-22
      • 2018-02-03
      相关资源
      最近更新 更多