我想添加一個默認的左欄按鈕項目到我的導航欄。只有當UINavigationController沒有提供後退按鈕時纔會顯示它。當沒有後退按鈕時,向UINavigationController添加一個左欄按鈕項目
什麼是最好的方法?
我想添加一個默認的左欄按鈕項目到我的導航欄。只有當UINavigationController沒有提供後退按鈕時纔會顯示它。當沒有後退按鈕時,向UINavigationController添加一個左欄按鈕項目
什麼是最好的方法?
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
if(navigationController.viewControllers.count != 1) { // not the root controller - show back button instead
return;
}
UIBarButtonItem *menuItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemOrganize
target:self
action:@selector(menuItemSelected:)];
[viewController.navigationItem setLeftBarButtonItem:menuItem];
}
這是來自UINavigationController的委託? –
斯威夫特代碼添加leftBarButtonItem
......
let leftMenuItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Done, target: self, action: "leftMenuItemSelected:");
self.navigationItem.setLeftBarButtonItem(leftMenuItem, animated: false);
斯威夫特3版本:
let done = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(YourController.done))
navigationItem.setLeftBarButtonItem(done, animated: false)
你的問題是最好的辦法。如果沒有後退按鈕,請添加左側按鈕。 – rmaddy