UINavigationController后退按钮标题总是显示“后退”

问题描述 投票:2回答:4

我正在开发一个IOS应用程序。我正在使用导航控制器。如果我按下到下一页,则后退按钮标题在IOS 7中未显示上一页标题。后退按钮标题始终在IOS 7中“返回”。我在viewWillAppearviewDidload中设置所有页面标题,如下所示。但它没有用。

self.navigationItem.title=@"Previous Page Title";
self.title  = @"Previous Page Title";

我可以在IOS 7中使用上一页标题设置按钮标题

感谢名单

ios uinavigationcontroller back uinavigationitem
4个回答
6
投票

如果标题很大,则后退按钮仅显示后退。尝试使用短标题,例如

self.title = @"Test";

如果你想要长标题,请选择自定义后退按钮。


0
投票

在iOS 7中,后退按钮长度受到限制(我认为是11个字符)。您可以设置这样的自定义“后退按钮标题”,例如在视图控制器中的viewDidAppear中使用长标题(不是当前视图控制器!):

self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Back Title"
                                                                         style:UIBarButtonItemStylePlain                                                                               
                                                                        target:nil
                                                                        action:nil];

0
投票

如果你想强制总是有后退按钮,但仍然让系统为你创建(将处理“后退”本地化,如果当前标题真的很长,则将按钮缩写为单个“<”),然后只需使用一个荒谬的长按钮标题:

self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"                                                                                               really long never shown title"
                                                                         style:UIBarButtonItemStylePlain                                                                               
                                                                        target:nil
                                                                        action:nil];

0
投票

试试这段代码:

[[UIBarButtonItem alloc] initWithTitle:@"Your Title Here"
                         style:UIBarButtonItemStylePlain                                                                               
                         target:nil action:nil];

或者您可以为此按钮设置图像:

UIBarButtonItem *barBtn = [[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"arrow.png"] style:UIBarButtonItemStylePlain target:self action:@selector(back:)];

self.navigationItem.leftBarButtonItem = barBtn;

和@selector方法:

-(void)back:(id)sender{
  [self.navigationController popViewControllerAnimated:YES];
}
© www.soinside.com 2019 - 2024. All rights reserved.