【问题标题】:UINavigationController: How to manage Cancel button and back buttonUINavigationController:如何管理取消按钮和返回按钮
【发布时间】:2011-08-18 09:15:31
【问题描述】:
假设我有两个控制器 A 和 B...当我从 A 导航到 B 时,B 控制器上的后退按钮将是 A。
所以我的问题是...在单击按钮时,我必须将 backButton 更改为 Cancel Button.. 而在另一个后退按钮上,它应该以后退按钮箭头样式显示 backButton A。
请提出建议。
【问题讨论】:
标签:
iphone
objective-c
ios
uinavigationcontroller
uinavigationbar
【解决方案1】:
执行以下操作,
显示取消按钮:
- (void)showCancelButton {
UIBarButtonItem *cancelButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(someMethod)];
[self navigationItem] setLeftBarButtonItem:cancelButton];
[cancelButton release];
}
隐藏取消按钮:
- (void)hideCancelButton {
[self navigationItem] setLeftBarButtonItem:nil];
}
确保 self.navigationController.navigationItem.hidesBackButton 为 NO。