Ily*_*ski 90 iphone cocoa-touch uinavigationitem ios
默认情况下,后退按钮使用视图控件的标题作为文本.我可以在不更改视图控制器标题的情况下更改后退按钮上的文本吗?我需要这个,因为我有一个视图控制器,标题太长,无法显示,在这种情况下,我想只显示"后退"作为后退按钮的标题.
我尝试了以下哪些不起作用:
self.navigationItem.leftBarButtonItem.title = @"Back";
Run Code Online (Sandbox Code Playgroud)
谢谢.
Mar*_*c W 167
尝试
self.navigationItem.backBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] autorelease];
Run Code Online (Sandbox Code Playgroud)
我发现通过查看Apple的文档中的backBarButtonItem文档来获取UINavigationItem.
Mar*_*rco 97
一旦我找出应用它的控制器,Marc W的方法就很有效:一个被重新命名,而不是顶部的控制器.所以如果这是导航堆栈:
(bottom) ControllerA -> ControllerB (top)
Run Code Online (Sandbox Code Playgroud)
...并且当ControllerB位于顶部时,您希望在显示的后退按钮中为ControllerA提供较短的标题,您将属性更改应用于ControllerA.
所以它更多的是在上下文中self.title
,而不像其他左/右键按钮设置器.
小智 47
你可以在故事板中完成.找到要返回的视图控制器(具有长标题的视图控制器),选择它的导航项,然后打开属性检查器(Alt + Cmd + 4),插入自定义后退按钮标题.
小智 40
谢谢Marco ...帮助了我......
这就是我做的.
如果您使用tableView导航到不同的视图...放置代码:
self.navigationItem.backBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil] autorelease];
Run Code Online (Sandbox Code Playgroud)
在您的didSelectRowAtIndexPath
方法...第一个控制器...控制器A.
导航到控制器B时,按钮的标题为"返回".
Ros*_*one 12
后退按钮从父视图控制器的标题中提取其文本.
在父视图控制器(点击后退按钮时显示的视图控制器)中,将其自己的标题设置为后退按钮上的所需文本.
例如,假设我们有一个RootViewController
班级.当我们在其表视图中单击一个单元格时,我们将推送一个实例SecondViewController
.我们希望SecondViewController
实例的后退按钮显示为"Home".
在RootViewController.m的viewDidLoad
方法中:
self.title = @"Home";
Run Code Online (Sandbox Code Playgroud)
在SecondViewController.m的viewDidLoad
方法中:
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.backBarButtonItem = backButton;
[backButton release];
Run Code Online (Sandbox Code Playgroud)
如果您希望后退按钮读取,"返回",则将父视图控制器的标题设置为@"Back"
;
Fel*_*ile 10
这项工作对我来说更好.试试:
self.navigationController.navigationBar.topItem.backBarButtonItem = [[UIBarButtonItem alloc]
initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
Run Code Online (Sandbox Code Playgroud)
如果您使用的是故事板:
就是这样,享受......
在MonoTouch中,以下工作(在父控制器的ViewDidLoad中):
NavigationItem.BackBarButtonItem = new UIBarButtonItem( "Back", UIBarButtonItemStyle.Plain, null);
Run Code Online (Sandbox Code Playgroud)