- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
tabbarVC = [[UITabBarController alloc]init];
// [self.window setRootViewController:tabbarVC];
[self.window setRootViewController:tabbarVC];
[self addCenternTabBarButton];
FirstNavViewController *first = [[FirstNavViewController alloc]init];
SecondNavViewController *second = [[SecondNavViewController alloc]init];
FourthViewController *fourth = [[FourthViewController alloc]init];
FifthViewController *fifth = [[FifthViewController alloc]init];
// dsViewController *third = [[dsViewController alloc]init];
tabbarVC.viewControllers = [NSArray arrayWithObjects:first,second,fourth,fifth,nil];
UITabBar *tabBar = tabbarVC.tabBar;
UITabBarItem *tabBarItem1 = [tabBar.items objectAtIndex:0];
UITabBarItem *tabBarItem2 = [tabBar.items objectAtIndex:1];
UITabBarItem *tabBarItem4 = [tabBar.items objectAtIndex:2];
UITabBarItem *tabBarItem5 = [tabBar.items objectAtIndex:3];
IOS7中已弃用
// [tabBarItem1 setFinishedSelectedImage:[UIImage imageNamed:@""] withFinishedUnselectedImage:[UIImage imageNamed:@""]];
tabBarItem1.image = [UIImage imageNamed:@"dish_circle_tab_icon_selected.png"];
tabBarItem1.selectedImage = [[UIImage imageNamed:@"dish_circle_tab_icon_selected.png"]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
UIImage *selectImg = [UIImage imageNamed:@"discovery_tab_icon_selected.png"];
tabBarItem2.selectedImage = [selectImg imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
tabBarItem2.image = selectImg;
// tabBarItem3.selectedImage = [selectImg imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
// tabBarItem3.image = [UIImage imageNamed:@"discovery_tab_icon_selected.png"];
tabBarItem4.image = [UIImage imageNamed:@"friend_tab_icon_selected.png"];
tabBarItem4.selectedImage = [[UIImage imageNamed:@"friend_tab_icon_selected.png"]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
UIImage *tabbarImg5 = [UIImage imageNamed:@"my_tab_icon_selected.png"];
tabBarItem5.image = tabbarImg5;
tabBarItem5.selectedImage = [tabbarImg5 imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
UIImage *tabBarBackgroundImg = [UIImage imageNamed:@"tabbar_bg.jpg"];
[[UITabBar appearance]setBackgroundImage:tabBarBackgroundImg];
tabBar.translucent = YES;
//tabbar Image偏移量
[tabBarItem1 setImageInsets:UIEdgeInsetsMake(5.0, -10.0, -5.0, 10.0)];
[tabBarItem2 setImageInsets:UIEdgeInsetsMake(5.0, -20.0, -5.0, 20.0)];
[tabBarItem4 setImageInsets:UIEdgeInsetsMake(5.0, 20.0, -5.0, -20.0)];
[tabBarItem5 setImageInsets:UIEdgeInsetsMake(5.0, 0.0, -5.0, 0.0)];
return YES;
}
-(void)addCenternTabBarButton{
//NSLog(@"addCenternTabBarButton");
//创建一个自定义button
UIButton *centerButton = [UIButton buttonWithType:UIButtonTypeCustom];
//初始化button的背景图片
UIImage *centerButtonImg = [UIImage imageNamed:@"camera_tab_cion.png"];
//设置button的frame
centerButton.frame = CGRectMake(0, 0, centerButtonImg.size.width, centerButtonImg.size.height);
//设置button的背景图片
[centerButton setBackgroundImage:centerButtonImg forState:UIControlStateNormal];
//设置button的action
[centerButton addTarget:self action:@selector(centerOnclick:)forControlEvents:UIControlEventTouchUpInside];
CGFloat imageHeight = centerButtonImg.size.height;
CGFloat barHeight = tabbarVC.tabBar.frame.size.height;
//NSLog(@"imageHeight=%2.f,barHeight=%.2f",imageHeight,barHeight);
CGFloat delta = imageHeight-barHeight;
//NSLog(@"delta=%.2f",delta);
//设置centerButton的中心位置
if(delta<=0){//如果图片高度小于等于TabBar高度
centerButton.center = tabbarVC.tabBar.center;
}else{//如果图片高度大于TabBar高度
CGPoint center = tabbarVC.tabBar.center;
center.y = center.y - delta/2.0;
centerButton.center = center;
}
//将centerButton加入到tabBarController中
[tabbarVC.view addSubview:centerButton];
}