- 1. 自定义tabbar
/**
* 自定义添加控制器方法
*
* @param childController 添加的子控制器对象
* @param title 标题
* @param image 图片
* @param selectImage 选中图片
*/
- (void)addChildViewController:(UIViewController *)childController Title:(NSString *)title Image:(NSString *)image SelectImage:(NSString *)selectImage
{
//添加导航控制器
YFNavigationController *navigation = [[YFNavigationController alloc] initWithRootViewController:childController];
childController.title = title;
childController.tabBarItem.image = [UIImage imageNamed:image];
//将图片原来样子展示出来 不对其进行其他颜色渲染
childController.tabBarItem.selectedImage = [[UIImage imageNamed:selectImage] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
NSMutableDictionary *text = [NSMutableDictionary dictionary];
text[NSForegroundColorAttributeName] = YFColor(123, 123, 123);
NSMutableDictionary *selectText = [NSMutableDictionary dictionary];
selectText[NSForegroundColorAttributeName] = YFMainColor;
//设置文字颜色
[childController.tabBarItem setTitleTextAttributes:text forState:UIControlStateNormal];
[childController.tabBarItem setTitleTextAttributes:selectText forState:UIControlStateSelected];
[self addChildViewController:navigation];
}
- 2.自定义导航条
① //通过背景图片来设置导航栏的外观。
[self.navigationBar setBackgroundImage:nil forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault];
//隐藏底部黑线
[self.navigationController.navigationBar setShadowImage:nil];
②. - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated
{
//操作.......
//写在这会有一个tabbar推出效果
[super pushViewController:viewController animated:animated];
}