我在下面的代码中更改了下一个屏幕上的后退按钮图像。
我的应用程序中有 30 个屏幕,我希望后退按钮在所有 30 个屏幕上都相同。有没有可能我不在所有 30 个屏幕上复制粘贴这段代码,而是只写一次,而是在 30 个屏幕上重复使用它。
此外,当我重复使用时,后退按钮附带的代码应该可以在所有屏幕上正常工作
我正在使用 iOS 8 和 Xcode 6。
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
let backButtonImage: UIImage = UIImage(named: "back")!
var backBarItem: UIBarButtonItem = UIBarButtonItem(image: backButtonImage, style: UIBarButtonItemStyle.Plain, target: self, action: Selector("method"))
segue.destinationViewController.navigationItem.leftBarButtonItem = backBarItem;
}
func method() {
self.navigationController?.popViewControllerAnimated(true)
}
最佳答案
你可以全局改变它
UINavigationBar.appearance().backIndicatorImage = UIImage(named: "custom-back")
UINavigationBar.appearance().backIndicatorTransitionMaskImage = UIImage(named: "custom-back")
或每个导航 Controller 。
override func viewDidLoad() {
super.viewDidLoad()
navigationController?.navigationBar.backIndicatorImage = UIImage(named: "custom-back")
navigationController?.navigationBar.backIndicatorTransitionMaskImage = UIImage(named: "custom-back")
}
这里有完整的细节 https://sarunw.com/posts/how-to-change-back-button-image/
关于ios - 更改所有屏幕的 ViewController 后退按钮图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31759945/