【问题标题】:UINavigtion controller back button do not show properly [closed]UINavigtion 控制器后退按钮未正确显示[关闭]
【发布时间】:2017-09-27 06:46:24
【问题描述】:

如图所示,iOS 11 上的原生后退按钮存在问题。有解决办法吗?

【问题讨论】:

  • 你试过self.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeAutomatic;
  • 是,但不工作。
  • 您为 setBackButtonTitlePositionAdjustment 添加了任何代码?这将是导致此问题的原因。
  • 不,我没有使用它。
  • 但我正在使用使用此代码的 IQKeyboardManager。

标签: ios11 navigationbar uitabbaritem


【解决方案1】:

你能试试这段代码来解决这个问题吗?如果它不适合您,请在下面发表评论。

    var backImage = UIImage(named: "back_button_image").withRenderingMode(.alwaysOriginal)
    let leftPadding: CGFloat = 10
    let adjustSizeForBetterHorizontalAlignment: CGSize = CGSize(width: backImage.size.width + leftPadding, height: backImage.size.height)
    UIGraphicsBeginImageContextWithOptions(adjustSizeForBetterHorizontalAlignment, false, 0)
    backImage.draw(at: CGPoint(x: leftPadding, y: 0))
    backImage = UIGraphicsGetImageFromCurrentImageContext()!
    UIGraphicsEndImageContext()
    self.navigationController?.navigationBar.backIndicatorImage = backImage
    self.navigationController?.navigationBar.backIndicatorTransitionMaskImage = backImage
    self.navigationItem.backBarButtonItem = UIBarButtonItem(title: " ", style: .plain, target: nil, action: nil)

【讨论】:

  • 我没有使用自定义图像。它的默认导航栏后退按钮。
  • 我也使用了你的代码,但同样的问题
  • 你能提供更多相关信息吗?即使我试图删除所有这些只是保留空白标题的后退按钮,我仍然没有重现。
  • 当我按下第二个控制器然后返回第二个控制器对齐问题的按钮。同样的问题是在所有控制器的整个应用程序中。仅在 ios 11 上。但在下面的 ios 11 上工作正常。
  • 老实说,我无法复制,您能否分享您的来源以获得快速帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-22
  • 2014-02-16
  • 1970-01-01
相关资源
最近更新 更多