ios - ios 11 中导航栏中的后退按钮无法被点击

标签 ios swift ios11

它工作得很好,直到最近的更新,我认为导航项应该与自动布局概念一起工作。我一直这样使用它:

let button = UIButton(frame: CGRect(origin: CGPoint.zero, size: CGSize(width: 30, height: 30)))
button.setImage(UIImage(named: "BackIcon"), for: UIControlState())
button.imageEdgeInsets = UIEdgeInsetsMake(0, -20, 0, 0)
button.addTarget((target != nil ? target! : self), action: backAction, for: .touchUpInside)
navigationItem.leftBarButtonItem = UIBarButtonItem(customView: button)

我应该做哪些更改才能使其平滑,因为目前它不会在每次点击时都被调用,通常需要在同一区域点击 2-3 次。

最佳答案

这对我在 iOS 11 上有效。看看它是否适合你。

    let btnLeftMenu = UIButton.init(type: .system)
    let image = UIImage(named: "Back");
    btnLeftMenu.setImage(image, for: .normal)
    btnLeftMenu.setTitle("BACK", for: .normal);
    btnLeftMenu.imageEdgeInsets = UIEdgeInsetsMake(0, -30, 0, 0)
    btnLeftMenu.titleEdgeInsets = UIEdgeInsetsMake(0, -30, 0, 0)
    btnLeftMenu.sizeToFit()
    btnLeftMenu.tintColor = UIColor.white
    btnLeftMenu.titleLabel?.font = UIFont.init(name: "Avenir-Heavy", size: 16.0)
    btnLeftMenu.addTarget(self, action: #selector (CustomMessageVC.backButtonAction(_:)), for: .touchUpInside)
    let barButton = UIBarButtonItem(customView: btnLeftMenu)
    self.navigationItem.leftBarButtonItem = barButton

[编辑]

可能图像的宽度和高度较小。您可以在 Xcode 调试中使用实时 Viewstack 检查后退按钮的宽度和高度。单击图像右侧第二个按钮可查看 ViewStack。如果宽度和高度是问题,则增加按钮的宽度和高度,图像居中,imageView 属性适合宽高比。那应该可以解决你的问题。快乐编码。

Image

关于ios - ios 11 中导航栏中的后退按钮无法被点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46582295/

相关文章:

ios - 快速向后滑动时,UITableViewCell 不会被取消选择

android - flutter 力释放前景

iphone - 逻辑 - 需要找到重叠的数字范围

ios - 努力理解为什么 "Capturing by reference ensures that runningTotal and amount do not disappear when the call to makeIncrementer ends' ?

swift/ cocoa : launchApplication(at:options:configuration:) and catching errors

swift - UISearchController 在 iOS 11 Swift 4 上隐藏状态栏

android - 框架 'shared.framework' 缺少此目标 : arm64. Xcode 12.0 kotlin 1.4.10 所需的一个或多个架构

swift - 我可以获得与 C# 的 "protected"访问类似的最终结果,但在 Swift 中?

swift - ARKit – 球没有穿过 "SCNTorus"孔

iphone - Firebase FCM 推送通知停止工作 iOS 11.1.1