swift - 更改导航栏项目位置

标签 swift uinavigationbar uinavigationitem

如何将 UINavigation barItem 位置从 leftBarButtonItem 更改为带后退功能的 rightBarButtonItem

enter image description here

最佳答案

为此,您需要创建一个自定义的 BarButtonItem 并将其设置到右侧,您还需要隐藏默认的 BackBarButton,所以请尝试这样的操作。在 viewDidLoad 中添加以下代码。

self.navigationItem.hidesBackButton = true
let btnForward = UIButton(frame: CGRect(x: 0, y: 0, width: 25, height: 25))
btnForward.setImage(UIImage(named: "forward_Arrow"), forState: .Normal)
btnForward.addTarget(self, action: #selector(self.buttonAction(_:)), forControlEvents: .TouchUpInside)
let backItem = UIBarButtonItem(customView: btnForward)     
self.navigationItem.rightBarButtonItem = backItem

然后在你的 ViewController 中添加这个 Action 方法

func buttonAction(sender: UIButton) {
    self.navigationController?.popViewControllerAnimated(true)
}

关于swift - 更改导航栏项目位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39116361/

相关文章:

iphone - 向导航栏添加后退按钮

swift - Alamofire 相当于 AFHTTPSessionManager

ios - 单击ui按钮时如何删除行

ios - 为什么 iOS 11 中导航 backBarButtonItem 的位置出现了三个按钮?

ios - Storyboard中带有嵌入式导航 Controller 的 UINavigationBar 自定义颜色

ios隐藏左侧导航按钮的文本

swift:实时显示mkdirection指令

ios - 如何阻止背景阻止 Swift 4 中的其他元素?

ios - 导航栏右栏按钮项不可见

ios - Push Segue 之后在导航栏上添加 UIView