iOS NavigationController后退图标

时间:2015-05-07 19:40:43

标签: ios swift

是否可以将后退按钮的图标从箭头更改为其他内容? (在导航栏中)

我没有在故事板的偏好中找到解决方案

2 个答案:

答案 0 :(得分:2)

如果您的部署目标至少是iOS 7,则可以使用backIndicatorImagebackIndicatorTransitionMaskImage属性。 如果您想更改应用程序中的所有导航栏,我建议使用appearance方法:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject:AnyObject]?) -> Bool {
    let backIcon = UIImage(named: "customImage")
    UINavigationBar.appearance().backIndicatorImage = backIcon
    UINavigationBar.appearance().backIndicatorTransitionMaskImage = backIcon
    return true
}

答案 1 :(得分:0)

这是不可能的(iOS 7之前),但您可以使用自己的自定义UIBarButtonItem,并实现逻辑来模拟后退按钮。

在viewDidLoad方法中添加此代码:

let backButton = UIBarButtonItem(image: UIImage(named: "customImage"), style: .Plain, target: self, action: "buttonClicked:")
self.navigationController.navigationItem.leftBarButtonItem = backButton

并实现buttonClicked函数:

func buttonClicked(button: UIBarButtonItem) {
    navigationController?.popViewController(animated: true)
}