更改所有UIViewControllers BackBarButtonItem?
我想在我的iOS应用程序的所有视图上更改BackBarButtonItem
,以便它们只显示没有文本的后退箭头。
唯一的方法是完成每个UIViewController并设置self.navigationItem.backBarButtonItem.title
? 看来我应该能够创build一个超类来定义backBarButtonItem.title
的默认值,但我不知道从哪里开始。
感谢您的帮助。
您不需要在每个视图控制器类上更改它。 你可以下载它并改变一次,或者你可以在你的应用程序代理中完成。
如果您想要导航栏的子类,可以使用text @“”简单地设置后退button:
UIBarButtonItem *newBackButton = [[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:nil]; [[self navigationItem] setBackBarButtonItem:newBackButton];
如果你想在应用程序委托中做到这一点,你可以通过两种方式来做到这一点:
一种方法是将button文本的颜色设置为清晰的颜色:
[[UIBarButtonItem appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor clearColor]} forState:UIControlStateNormal];
另一种方法是将后退button远离屏幕,所以用户看不到它
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -200) forBarMetrics:UIBarMetricsDefault];