当用户点击UINavigationController后退按钮时执行某些操作

时间:2012-12-11 09:31:49

标签: iphone objective-c ios uinavigationcontroller

我正在使用最新的SDK和XCode开发iOS应用程序。

我有一个配置屏幕,我需要在用户返回上一屏幕之前保存设置。此viewcontroller称为SettingsViewController

我在故事板上使用导航控制器,我需要检测用户点击后退按钮的时间。

我可以在- (void)viewWillDisappear:(BOOL)animated上添加此代码。你怎么看?

如何检测用户何时点击SettingsViewController上的后退按钮?

2 个答案:

答案 0 :(得分:1)

您可以使用self.navigationItem.leftBarbuttonItem添加您的buttonitem 当用户单击按钮时,您将调整在按钮选择器中定义的方法

答案 1 :(得分:1)

试试这个

//Put this viewDidLoad and make sure you have a back.png that mimics back button
UIImage *buttonImage = [UIImage imageNamed:@"back.png"];
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:buttonImage forState:UIControlStateNormal];
button.frame = CGRectMake(0, 0, buttonImage.size.width, buttonImage.size.height);
[button addTarget:self action:@selector(backPressed:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *customBarItem = [[UIBarButtonItem alloc] initWithCustomView:button];
self.navigationItem.leftBarButtonItem = customBarItem;

这是你的方法

- (void)backPressed:(id)sender {
     //your code to save and also pop your view controller
  }