首先來看三張圖:
代碼已貼出在圖片下方
無文字返回按鈕設置:
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault];
swift
UIBarButtonItem.appearance().setBackButtonTitlePositionAdjustment(UIOffset(horizontal: 0, vertical: -60), for: UIBarMetrics.default)
自定義返回按鈕(位置與系統位置一致) 爲UIViewController添加extension方法,方便調用
extension UIViewController{
// xzCustomBackBarButtonItem
func customBackBarButtonItem(target:AnyObject?,action:Selector?){
var action1 = action
if action1 == nil {
action1 = #selector(self.navigationController?.popViewController(animated:))
}
var target1 = target
if target1 == nil {
target1 = self.navigationController
}
let backBarButtonItem = UIBarButtonItem.init(image: UIImage.init(named: "new-sys-jiantou"), style: UIBarButtonItemStyle.plain, target: target1, action: action1)
//UIImage.init(named: "new-sys-jiantou") UI提供返回圖片
let fixBarButtonItem = UIBarButtonItem.init(barButtonSystemItem: UIBarButtonSystemItem.fixedSpace, target: nil, action: nil)
fixBarButtonItem.width = -10
self.navigationItem.leftBarButtonItems = [fixBarButtonItem,backBarButtonItem]
}
}