我在下面的代码中更改了下一个屏幕上的后退按钮图像.
我的应用程序中有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)
}
最佳答案 要在iOS中一般更改UI-Elements的外观,请查看
UIAppearance.这样您就可以设置一次,它将在您的应用程序的任何位置.
我建议在AppDelegate应用程序中设置它:didFinishLaunchingWithOptions:.
试试这个:
let backImg: UIImage = UIImage(named: "back")!
UIBarButtonItem.appearance().setBackButtonBackgroundImage(backImg, forState: .Normal, barMetrics: .Default)