效果图如下:
一.创建一个UITabbarController,并在AppDelegate中的 didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法设置
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
//tabbar控制器
ShopPageBarController *tab = [[ShopPageBarController alloc] init];
self.window.rootViewController = tab;
self.window.backgroundColor = WHITECOLOR;
[self.window makeKeyAndVisible];
二.在 ShopPageBarController.m 文件中实现封装方法
- (void)viewDidLoad{
[super viewDidLoad];
[self createSystemTabbar];
}
//自封装方法
-(UINavigationController*)createNavWithViewController:(UIViewController *)viewController WithTitle:(NSString*) title image:(UIImage*)image
{
UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:viewController];
viewController.tabBarItem = [[UITabBarItem alloc] initWithTitle:title image:image tag:0];
viewController.title = title;
return nav;
}
//创建系统tabbar
- (void)createSystemTabbar{
HomePagController *page = [[HomePagController alloc] init];
CategoryController *cate = [[CategoryController alloc] init];
UIViewController *vc = [[UIViewController alloc] init];
UIViewController *vc1 = [[UIViewController alloc] init];
UIViewController *vc2 = [[UIViewController alloc] init];
//数组设置
self.viewControllers = [NSArray arrayWithObjects:[self createNavWithViewController:page WithTitle:@"首页" image:[UIImage imageNamed:@"icon-d-4"]],
[self createNavWithViewController:cate WithTitle:@"分类" image:[UIImage imageNamed:@"icond-3"]],
[self createNavWithViewController:vc WithTitle:nil image:nil],
[self createNavWithViewController:vc1 WithTitle:@"实时定位" image:[UIImage imageNamed:@"icon-d-1"]],
[self createNavWithViewController:vc2 WithTitle:@"我的" image:[UIImage imageNamed:@"icon-d-2"]],
nil];
//中间突出按钮设置
UIButton *button = [[UIButton alloc]initWithFrame:CGRectMake(0.0,0.0,65,65)];
button.center = CGPointMake(WIDTH/2,15);
[button setBackgroundImage:[UIImage imageNamed:@"icon-z"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(pickClick) forControlEvents:UIControlEventTouchUpInside];
[self.tabBar addSubview:button];
}
//点击事件
- (void)pickClick{
}