我想通过当前 UIViewController 的 backBarButtonItem 离开页面时发送确认 UIAlertView。
为此,我用新的 UIBarButtonItem 替换了现有的后退按钮:
- (void) setBackButton {
NSArray * viewControllers = self.navigationController.viewControllers;
UIViewController * previousController = [viewControllers objectAtIndex:[viewControllers count]-2];
self.backButton = [[UIBarButtonItem alloc] initWithTitle:previousController.title style:UIBarButtonItemStyleBordered target:self action:@selector(backButtonPressed)];
previousController.navigationItem.backBarButtonItem = self.backButton;
}
因此问题是:我似乎无法在我当前的 UIViewController 中获得对 @selector(backButtonPressed) 的回调。将 self.backButton 放入 self.navigationItem.leftBarButtonItem 时,它确实有效,但按钮是矩形而不是箭头。
如何获得一个看起来与原始后退按钮完全相同的按钮,该按钮允许调用 @selector(backButtonPressed) 方法而不是仅仅返回?