百思学习笔记10-自定义导航控制器
来源:互联网 发布:中国金融数据网 编辑:程序博客网 时间:2024/06/06 21:40
我们要统一所有的导航栏控制器,不能一个一个的子控制器去设置
这时我们需要自定义导航控制器来统一样式
首先新建一个继承UINavigationController的类
然后在自定义的TabBarController中设置
XMGNavigationController *nav = [[XMGNavigationController alloc] initWithRootViewController:vc];
我们就可以自定义的UINavigationController中来个性化了
/** * 可以在这个方法中拦截所有push进来的控制器 */- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{ if (self.childViewControllers.count > 0) { // 如果push进来的不是第一个控制器 UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; [button setTitle:@"返回" forState:UIControlStateNormal]; [button setImage:[UIImage imageNamed:@"navigationButtonReturn"] forState:UIControlStateNormal]; [button setImage:[UIImage imageNamed:@"navigationButtonReturnClick"] forState:UIControlStateHighlighted]; button.size = CGSizeMake(70, 30); // 让按钮内部的所有内容左对齐 button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;// [button sizeToFit]; // 让按钮的内容往左边偏移10 button.contentEdgeInsets = UIEdgeInsetsMake(0, -10, 0, 0); [button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; [button setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted]; [button addTarget:self action:@selector(back) forControlEvents:UIControlEventTouchUpInside]; viewController.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:button]; // 隐藏tabbar viewController.hidesBottomBarWhenPushed = YES; } // 这句super的push要放在后面, 让viewController可以覆盖上面设置的leftBarButtonItem [super pushViewController:viewController animated:animated]; }- (void)back{ [self popViewControllerAnimated:YES];}
最后分享一个在PCH中方便设置颜色的方法
#define XMGRGBColor(r, g, b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0]#define XMGGlobalBg XMGRGBColor(223, 223, 223)
0 0
- 百思学习笔记10-自定义导航控制器
- 百思学习笔记04-自定义子控制器
- 导航视图控制器-------------学习笔记
- 导航视图控制器学习笔记
- iOS导航控制器学习笔记(1)
- IOS开发学习笔记(导航控制器,视图控制器,模态)
- 自定义UINavigationController(导航控制器)
- 导航控制器push自定义
- 自定义导航控制器
- 自定义导航控制器
- 控制器与导航笔记
- 学习笔记-斯坦福iOS7-第六课:控制器多态性,导航控制器,选项卡控制器
- 导航控制器的学习
- 导航控制器(二 自定义UINaigationControl)
- 自定义导航控制器的动画
- 自定义导航控制器返回按钮
- iOS- 自定义导航控制器(-)
- iOS 自定义导航控制器UINavigationController
- 还是最短路径(接前面最短路径)
- hdu 4983(欧拉函数)
- 图(拓扑排序) 1
- Qt实战之贪吃蛇(1)
- Android中Nine-Patch(.9)图片介绍与制作
- 百思学习笔记10-自定义导航控制器
- Codeforces AIM Tech Round (Div. 2) 624B Making a String
- js中的preventDefault与stopPropagation详解
- Spider 之 爬虫 基本工作原理
- hdu 2088 简易版之最短距离
- Bravo!Java学习笔记(2)---泛型程序设计
- C# 基础加强(三) 虚方法:virtual
- POJ 3069
- Deep Learning 学习笔记一