亲宝软件园·资讯

展开

IOS 导航栏 标题 IOS 改变导航栏返回按钮的标题实例详解

人气:0
想了解IOS 改变导航栏返回按钮的标题实例详解的相关内容吗,在本文为您仔细讲解IOS 导航栏 标题的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:IOS,改变导航栏返回按钮的标题,IOS,改变导航栏标题,下面大家一起来学习吧。

IOS 改变导航栏返回按钮的标题实例详解

前言:

下午又找到了一个新的方法 这个方法不错 暂时没有发现异常的地方。

   新写的App中需要使用UINavigationController对各个页面进行导航,但由于第一级页面的title较长,在进入第二级页面后返回按钮leftButtonItem的title就会变得很长,对NavigationBar空间占用很大,而且不美观,于是使用代码对leftButtonItem的title文本进行修改,无论是设置self.navigationItem.leftBarButtonItem.title = @"返回";还是self.navigationItem.backBarButtonItem.title = @"返回";都没有效果,title文本始终不会发生变化。到网上乱搜一通后,得到了以下解决方法,相对来说比较简单,特记录如下:

    在第一级页面的viewDidLoad方法中加入以下代码:

UIBarButtonItem *temporaryBarButtonItem = [[UIBarButtonItem alloc] init]; 
 temporaryBarButtonItem.title = @"返回"; 
 self.navigationItem.backBarButtonItem = temporaryBarButtonItem; 
 [temporaryBarButtonItem release];   

也就是用一个新的按钮在进行导航前将原来的返回按钮替换掉就可以了。

可以如下设置 但是这样的缺点是那个按键会变成方形 可以添加图片来进行修改。

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back" 
       style:UIBarButtonItemStyleBordered 
       target:self 
       action:@selector(backToPrevious)]; 
   
  self.navigationItem.leftBarButtonItem = backButton; 
  [backButton release]; 
 
- (void)backToPrevious 
{ 
  [self.navigationController popViewControllerAnimated:YES]; 
} 

添加图片的相关代码如下

UIButton *leftButton = [[UIButtonalloc] initWithFrame:CGRectMake(0, 0, 60, 40)]; 
  [leftButton setTitle:@"返回"forState:UIControlStateNormal]; 
  [leftButton setImage:[UIImageimageNamed:@"UINavigationBar.png"] forState:UIControlStateNormal]; 
  [leftButton setImage:[UIImageimageNamed:@"UINavigationBar.png"] forState:UIControlStateHighlighted]; 
  [leftButton addTarget:selfaction:@selector(leftAction:) forControlEvents:UIControlEventTouchUpInside]; 
  UIBarButtonItem *leftItem = [[UIBarButtonItemalloc] initWithCustomView:leftButton]; 
  [leftButton release]; 
  self.navigationItem.leftBarButtonItem = leftItem; 
  [leftItem release]; 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

加载全部内容

相关教程
猜你喜欢
用户评论