iOS重写系统中的UINavigationController返回按钮的事件

来源:互联网 发布:阿里云ecs linux教程 编辑:程序博客网 时间:2024/05/21 12:45

iOS开发中用系统的导航栏,有时需要在点击返回按钮时处理一些业务,这时就需要重写返回按钮的事件。目前找到的方案都不太理想,例如iOS重写系统中的UINavigationController返回按钮的事件,过于复杂。于是试着解决这个问题。

  1. self.navigationItem.backBarButtonItem=[[UIBarButtonItem alloc] initWithImage:@"navi_back" style:UIBarButtonItemStylePlain target:self action:@selector(goBack:)];
    这个方法不走goBack:方法,似乎apple默认了一个事件,而不能通过设置backBarButtonItem修改,不可行。

  2. self.navigationItem.hidesBackButton = YES;
    self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc] initWithImage:@"navi_back"
    target:self
    action:@selector(goBack:)];
    self.navigationItem.leftItemsSupplementBackButton = YES;

    通过隐藏返回按钮,设置leftBarButtonItem可以完美解决这个问题,并且更简单些。

1 0
原创粉丝点击