我正在尝试将后退按钮更改为自定义按钮。如果我只用自定义标题创建一个UIBarButtonItem,那就可以了。但是,如果我使用自定义视图创建一个,则按钮不会显示,而是显示默认的后退按钮。有什么想法吗?
UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom]; backBtn.frame = CGRectMake(0, 0, 51, 31); [backBtn setImage:[UIImage imageNamed:@"nav_btn_back.png"] forState:UIControlStateNormal]; [backBtn addTarget:self action:@selector(back) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *back = [[[UIBarButtonItem alloc] initWithCustomView:backBtn] autorelease]; self.navigationItem.backBarButtonItem = back;
答案 0 :(得分:0)
不确定为什么不起作用。但是我意识到我可以将这个自定义按钮设置为我视图的leftBarButtonItem
答案 1 :(得分:0)
你可以使用 setBackButtonBackgroundImage (Apple doc)
用法:
let backImg: UIImage = UIImage(named: "img_name")!
backButton.setBackgroundImage(backImg, forState: .Normal, barMetrics: .Default)
如果您在所有控制器中使用它,请使用外观:
let backImg: UIImage = UIImage(named: "img_name")!
UIBarButtonItem.appearance().setBackButtonBackgroundImage(backImg, forState: .Normal, barMetrics: .Default)