1、WYYNavigationController
#import"WYYNavigationController.h"
@implementationWYYNavigationController
-(void)viewDidLoad{
[superviewDidLoad];
}
-(void)didReceiveMemoryWarning{
[selfdidReceiveMemoryWarning];
}
@end
2、自定义TabBarController,WYYTabBarController
//
//WYYTabBarController.m
//test1
//
//Created by chengyou on 16/1/18.
//Copyright © 2016年wuyingying. All
rights reserved.
//
#import"WYYTabBarController.h"
@implementationWYYTabBarController
-(void)viewDidLoad{
[superviewDidLoad];
[selfsetUpAllChildViewController];
}
-(void) setUpAllChildViewController{
//1.添加第一个控制器
WYYOneViewController*oneVc = [[WYYOneViewControlleralloc]init];
[selfsetUpAllChildViewController:oneVcimage:[UIImageimageNamed:@"tab_home_icon"]title:@"首页"];
//2.添加第二个控制器
WYYTwoTableViewController*twoVc = [[WYYTwoTableViewControlleralloc]init];
[selfsetUpAllChildViewController:twoVcimage:[UIImageimageNamed:@"js"]title:@"通讯录"];
//3.添加第三个控制器
WYYThreeTableViewController*threeVc = [[WYYThreeTableViewControlleralloc]init];
[selfsetUpAllChildViewController:threeVcimage:[UIImageimageNamed:@"qw"]title:@"办公"];
//4.1加载storyboard,这里仅仅是加载名称为WYYFourViewController的storyBoard,并不会创建storyBoard中的控制器和空间
UIStoryboard*storyBoard = [UIStoryboardstoryboardWithName:@"WYYFourViewController"bundle:nil];
//4.2创建storyBoard中箭头指向的控制器(初始控制器)
WYYFourViewController*fourVc =
[storyBoardinstantiateInitialViewController];
//4.3添加第四个控制器
[selfsetUpAllChildViewController:fourVcimage:[UIImageimageNamed:@"user"]title:@"设置"];
}
#pragma mark --添加一个子控制器的方法
-(void)setUpAllChildViewController:(UIViewController*)viewController
image:(UIImage*)image title:(NSString*)title{
UINavigationController*navC = [[UINavigationControlleralloc]initWithRootViewController:viewController];
navC.title= title;
navC.tabBarItem.image= image;
[navC.navigationBarsetBackgroundImage:[UIImageimageNamed:@"commentary_num_bg"]forBarMetrics:UIBarMetricsDefault];
viewController.navigationItem.title= title;
[selfaddChildViewController:navC];
}
@end
3、WYYViewController
//
//WYYViewController.m
//test1
//
//Created by chengyou on 16/1/18.
//Copyright © 2016年wuyingying. All
rights reserved.
//
#import"WYYViewController.h"
@implementationWYYViewController
-(void)viewDidLoad{
//如果控制器A的View成为控制器B的View的子控件,那么A控制器成为B控制器的子控制器
WYYTabBarController*tabBarVc = [[WYYTabBarControlleralloc]init];
//添加WYYTabBarController为子控制器
[selfaddChildViewController:tabBarVc];
}
@end
4、AppDelegate.m
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
// Override point for customization after application
launch.
//1.创建窗口
self.window= [[UIWindowalloc]initWithFrame:[UIScreenmainScreen].bounds];
//2.设置窗口的根控制器
WYYTabBarController*dragVc = [[WYYTabBarControlleralloc]init];
self.window.rootViewController= dragVc;
//3.显示窗口
[self.windowmakeKeyAndVisible];
returnYES;
}