【发布时间】:2023-04-01 06:54:02
【问题描述】:
我正在尝试从 Interface Builder 中更改后退按钮的文本,但是当我选择导航栏并进入属性检查器并将后退按钮文本设置为“关闭”时,它仍然显示为标题之前的观点。
如何让它工作?
【问题讨论】:
标签: iphone objective-c interface-builder
我正在尝试从 Interface Builder 中更改后退按钮的文本,但是当我选择导航栏并进入属性检查器并将后退按钮文本设置为“关闭”时,它仍然显示为标题之前的观点。
如何让它工作?
【问题讨论】:
标签: iphone objective-c interface-builder
后退按钮将始终显示之前定义的 UIViewController 标题或 backBarButtonItem。
因此,如果您有“view1”并移至“view2”,则需要在“view1”中设置后退按钮,以便在显示“view2”时正确显示。
(换句话说,“view1”负责提供应该在指向它的后退按钮中显示的内容)
这样,如果“view1”后面有任何视图,所有这些视图都将具有正确的后退按钮。
【讨论】:
在 -(void)viewDidload 中试试这个,因为这个方法是在 nib 加载后触发的:
UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Close" style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.backBarButtonItem = backBarButtonItem;
[backBarButtonItem release];
【讨论】:
一个快速而肮脏的技巧是在视图控制器的 willDisappear 覆盖中将“标题”设置为您想要的按钮名称。确保在 willAppear 覆盖视图控制器上将“标题”设置回正确的名称。这种技术的一个缺点是,在较慢的单位上,您可以看到它发生了变化。在 iPhone 4 及更高版本上几乎不明显。
希望这会有所帮助。
【讨论】: