iOS 修改导航栏的返回按钮的内容

如何修改导航栏的返回按钮内容,开始我也费了好久的时间最后打算自定义一个算了,结果方法还是被我找到了。

导航的返回按钮的加载原理是这样的:

1、如果B视图有一个自定义的左侧按钮(leftBarButtonItem),则会显示这个自定义按钮;
2、如果B没有自定义按钮,但是A视图的backBarButtonItem属性有自定义项,则显示这个自定义项;
3、如果前2条都没有,则默认显示一个后退按钮,后退按钮的标题是A视图的标题。
按照这个解释,我把UIBarButtonItem *backItem……这段代码放在A视图的pushViewController语句之前。

实现过程是这样的

A视图的代码:


-(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSUInteger row = [indexPath row];
    
    UIBarButtonItem *returnButtonItem = [[UIBarButtonItem alloc] init];
    returnButtonItem.title = @"返回";
    self.navigationItem.backBarButtonItem = returnButtonItem;
    
    if(row == 2)
    {
        personViewController *person = [[personViewController alloc] initWithNibName:@"personViewController" bundle:nil];
        [self.navigationController pushViewController:person animated:YES];
    }
    
    if(row == 3)
    {
        teleplayViewController *teleplay = [[teleplayViewController alloc] initWithNibName:@"teleplayViewController" bundle:nil];
        [self.navigationController pushViewController:teleplay animated:YES];
    }
}
注意这段代码:



UIBarButtonItem *returnButtonItem = [[UIBarButtonItem alloc] init];
returnButtonItem.title = @"返回";
self.navigationItem.backBarButtonItem = returnButtonItem;
B视图我是什么也没有做的。结果就达到你想要的效果了。


查资料的时候有一种新的方法,没有试过,先帖在这里了:


self.navigationController.navigationBar.topItem.title=self.message;
self.navigationController.navigationBar.tintColor=[UIColorblackColor];
UIBarButtonItem*backButton = [[UIBarButtonItemalloc] initWithTitle:@" fan hui "style:UIBarButtonItemStyleBorderedtarget:selfaction:@selector(PopViewController)];
self.navigationItem.leftBarButtonItem= backButton;

这个应该是贴在B视图里面(就是你要跳转到的视图)

///

补充

对于这段代码:

UIBarButtonItem *returnButtonItem = [[UIBarButtonItem alloc] init];
returnButtonItem.title = @"返回";
self.navigationItem.backBarButtonItem = returnButtonItem;
很好解释的,事实上也不用一定要放在我说的那里,也是可以放在 viewWillAppear里面的
-(void) viewWillAppear:(BOOL)animated
{
UIBarButtonItem *returnButtonItem = [[UIBarButtonItem alloc] init];
returnButtonItem.title = @"返回";
self.navigationItem.backBarButtonItem = returnButtonItem;
}


This entry was posted in IOS and tagged 导航栏 UINavigation
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值