废话不多说直接上代码
为了方便理解,统一使用AB来代替,A代表当前控制器,B代表要push的控制器,也就是从A跳到B
更改返回键的颜色和字
更改返回键的文字,需要在A控制器做设置
- (IBAction)push:(id)sender {
UIBarButtonItem *backItem = [[UIBarButtonItem alloc] init];
backItem.title = @"哈哈哈";
// backItem.tintColor=[UIColor redColor];不知道为什么好像没作用
self.navigationItem.backBarButtonItem = backItem;
BViewController* VC=[self.storyboard instantiateViewControllerWithIdentifier:@"BViewController"];
[self.navigationController pushViewController:VC animated:YES];
}
但是系统带的返回键的颜色是蓝色的好像,怎么更改呢。这里我才用在B里面设置
代码如下:
// 返回按钮的颜色
self.navigationController.navigationBar.tintColor=[UIColor orangeColor];
更改标题栏的颜色
// 导航栏默认是半透明状态
self.navigationController.navigationBar.backgroundColor = [UIColor redColor];
// 导航栏不透明的
self.navigationController.navigationBar.barTintColor=[UIColor orangeColor];
更改标题的颜色
// title的颜色
UIColor *color = [UIColor whiteColor];
NSDictionary *dict = [NSDictionary dictionaryWithObject:color forKey:NSForegroundColorAttributeName];
self.navigationController.navigationBar.titleTextAttributes = dict;