【问题标题】:UINavigationBar height issue in iOS 11iOS 11 中的 UINavigationBar 高度问题
【发布时间】:2018-04-10 10:48:17
【问题描述】:

在 iOS 11 中 UINavigationBar 出现问题,设置 topItem.prompt 时使用代码:self.navigationController.navigationBar.topItem.prompt = @"(1/5)"

在 iOS 8~10 上运行良好,当它显示提示时,navigationBar 会自动将高度从默认的 44 更改为 74(iPhone 5S);

在 iOS 11 中,navigationBar 的高度仍然是 44,认为外观还不错,由于这个高度问题,导航按钮无法点击。请查看 iOS 8 和 iOS 11 上的快照:

有没有办法在不使用自定义导航栏的情况下解决这个问题?

【问题讨论】:

  • 我已经通过实现交叉验证了这个问题,虽然使用“提示”时导航栏的高度增加了,但它工作正常。检查导航栏按钮项是否正确添加(检查是否有任何其他视图是否重叠)
  • 谢谢,我已经通过在设置 topItem.prompt 后添加代码 [self.navigationController.navigationBar sizeToFit]; 解决了这个问题;我认为iOS 11存在navigationBar无法动态改变高度的问题,而iOS 8~10则没有问题。

标签: ios ios11 navigationbar


【解决方案1】:

我已通过在设置 topItem.prompt 后添加代码 [self.navigationController.navigationBar sizeToFit]; 来解决此问题。

似乎在 iOS 11 中存在一个问题,即 navigationBar 无法动态更改其高度。如果在显示导航栏之前设置了 topItem.prompt,则没有此问题。但是显示后,如果我们要添加一个topItem.prompt,必须添加代码。让导航栏更改为正确的高度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 2013-01-24
    • 1970-01-01
    • 2018-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多