UINavigationController修改返回按钮的标题
项目中遇到push的控制器要求导航栏的返回按钮文字修改为“返回“而不是上一页面的title有几种解决方案:
- 是否带有系统自带的返回箭头
- 没有箭头但是需要侧边滑能够返回
- 没有任何要求
带有系统自带的返回箭头
从A界面push到B界面,修改B的返回按钮标题,在A界面中添加代码
UIBarButtonItem *backItem = [[[UIBarButtonItem alloc] init] autorelease];
backItem.title = @"返回";
self.navigationItem.backBarButtonItem = backItem;
没有箭头但是需要侧边滑能够返回
本方法是我看到叶孤城[iOS开发的一些奇巧淫技]后学到的,比较有用。下面把主要代码写下
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]
initWithImage:img
style:UIBarButtonItemStylePlain
target:self
action:@selector(onBack:)];
self.navigationController.interactivePopGestureRecognizer.delegate = (id<UIGestureRecognizerDelegate>)self;
这段代码确保自定义了的leftBarbuttonItem左滑返回手势不失效
最简单也是啥要求都没有的情况下使用的
这种情况一般都是用于自定义左上角按钮,push出其他页面或者弹出一些popoVer等等
UIButton *btn = [[UIButton alloc]init];
self.navigationItem.leftBarButtonItem = btn;
这里你可以对按钮进行各种设置
TODO:暂时写到这里,有其他方法会继续补充