iOS开发中关于导航栏的一些设置
2017-09-08 14:36
549 查看
1、设置导航栏的背景颜色:
导航栏的背景颜色默认是白色,修改方法:
self.navigationController.navigationBar.barTintColor = [UIColor greenColor];
2、设置导航栏标题及标题颜色
//此方法中也可修改字体的大小
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;
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;
5、若要修改导航栏右侧的按钮距离整个view的距离更小的方法
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
导航栏的背景颜色默认是白色,修改方法:
self.navigationController.navigationBar.barTintColor = [UIColor greenColor];
2、设置导航栏标题及标题颜色
//此方法中也可修改字体的大小
[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;
5、若要修改导航栏右侧的按钮距离整个view的距离更小的方法
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
相关文章推荐
- iOS开发设置关于tabBar和navigationBar以及item中的一些全局属性
- iOS开发——导航栏的一些小设置
- 关于一些iOS开发中容易忽略的一些属性设置
- iOS 开发 一些关于图片的处理
- IOS开发:关于设置UIView的背景为图片的方法以及问题
- iOS开发--一些UITabBarItem属性的设置
- 关情纸尾-----关于最近学习iOS开发的一些总结(一)
- iOS开发的一些小技术:让UIImage有缩放功能、控制log的输出、xcode修改文件注释、随机数的使用、在UIImageView 中旋转图像、在Quartz中如何设置旋转点、创建.plist文件并存储
- ios SDK开发之关于CoreAnimation的一些注意点总结
- iOS开发 ☞ 关于带系统导航栏坐标的问题
- iOS 关于tableView cell的分割线的一些设置
- iOS开发-关于iOS11适配的一些坑
- iOS开发笔记之设置self.view原点为导航栏左下角
- 【iOS开发】关于Xcode8后产生的viewForHeaderInSection、viewForFooterInSection设置不产生效果的问题
- iOS开发之导航栏的一些小功能
- IOS开发:关于设置UIView的背景为图片的方法以及问题
- 关于选择移动开发平台(android,ios,wp7)的一些看法
- iOS开发:设置纯色导航栏,去掉导航栏分割线
- iOS开发笔记--关于设置UIView的背景为图片的方法以及问题
- iOS开发技巧:设置导航栏全透明效果