1、设置导航栏的背景颜色:
导航栏的背景颜色默认是白色,修改方法:
self.navigationController.navigationBar.barTintColor = [UIColor greenColor];
//此方法中也可修改字体的大小
[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]}];
self.title = @"导航栏标题";
3、自定义导航栏左侧返回的按钮(仅含有返回按钮,且改变系统蓝色的颜色)
UIImage *leftImage = [UIImage imageNamed:@"goBack_Yellow.png"];
UIBarButtonItem *leftBarBI = [[UIBarButtonItem alloc]initWithImage:[leftImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] style:UIBarButtonItemStylePlain target:self action:@selector(slrootNavigationControllerDidClickBackBtn)];
self.navigationItem.leftBarButtonItem = leftBarBI;
//返回事件
-(void)slrootNavigationControllerDidClickBackBtn{
[self.navigationController popViewControllerAnimated:YES];
}
4、自定义导航栏右侧按钮(去掉右侧的“>”,且改变右侧文字颜色)
UIButton *achieveBtn = [UIButton buttonWithType:UIButtonTypeCustom];
achieveBtn.frame = CGRectMake(0, 0, 40*kWidthScale, 40*kWidthScale);
[achieveBtn setTitle:@"完成" forState:UIControlStateNormal];
[achieveBtn setTitleColor:kButtonColor forState:UIControlStateNormal];
[achieveBtn addTarget:self action:@selector(topContactViewControllerWithRightBarButtonItem:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *achieveBtnItem = [[UIBarButtonItem alloc]initWithCustomView:achieveBtn];
self.navigationItem.rightBarButtonItem = achieveBtnItem;
UIButton *settingButton = [UIButton buttonWithType:UIButtonTypeCustom];
//修改按钮向右偏移10 point
[settingButton setFrame:CGRectMake(10.0, 0.0, 44.0, 44.0)];
[settingButton addTarget:self action:@selector(settingButtonOnClicked:) forControlEvents:UIControlEventTouchUpInside];
[settingButton setImage:[UIImage imageNamed:@"ic_main_setting"] forState:UIControlStateNormal];
//修改方法
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 44.0, 44.0)];
[view addSubview:settingButton];
UIBarButtonItem *rightItem = [[UIBarButtonItem alloc] initWithCustomView:view];
此方法来自:
作者:紧张的牛排
链接:http://www.jianshu.com/p/5f3eae0c0bd9