gpt4 book ai didi

swift - 如何修复我的导航栏后退按钮?

转载 作者:行者123 更新时间:2023-11-28 13:46:39 27 4
gpt4 key购买 nike

您好,我一直在尝试更改应用程序导航栏中的后退按钮。问题是我在两次加载 View 时看到了变化。

我已经多次搜索答案,但我没有看到我真正想要的东西。事实上,我是这门语言的新手,所以很难。

我尝试将以下几行放在 viewWillAppear 方法和其他方法中*:

nav?.navigationBar.backItem?.title = "Messages"

结果是,当我进入 View 时,我看到后退按钮的标题返回。然后,如果我按下该按钮并再次进入 View ,标题会根据需要更改。另一方面,我想要的是在我首先加载 View 时更改标题。

*-> 我在 viewDidLoad 中也尝试过相同的行,看看是否有任何作用,在上一个 View 的 viewWillDisappear 中,但没有任何反应。

最佳答案

您在当前的 ViewController 中使用了更改后退按钮的方法,这是错误的,因为您的导航栏是在过去的 Controller 中配置的。如果您使用 Storyboard,请在您的父 Controller 中尝试此方法:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let backItem = UIBarButtonItem()
backItem.title = "Messages"
navigationItem.backBarButtonItem = backItem
}

如果你在parentController中初始化newController,你必须修改parentController中的backButton,例如:

//任何按钮都会触发你的新 Controller

@objc private func presentDetailViewContorller() {
let weatherDetailController = WeatherDetailController()
let navController = NavigationController(rootViewController: weatherDetailController)
let backItem = UIBarButtonItem()
backItem.title = "Messages"
navController.backBarButtonItem = backItem
self.present(navController, animated: true, completion: nil)
}

祝你好运!

关于swift - 如何修复我的导航栏后退按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55320417/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com