zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

iOS中 UITabBarController中自定义UITabBar

ios 自定义
2023-09-27 14:26:37 时间
AViewController *aa = [[AViewController alloc] init]; UINavigationController* ayNav = [[UINavigationCont...
 AViewController *aa = [[AViewController alloc] init];

 UINavigationController* ayNav = [[UINavigationController alloc]initWithRootViewController:aa];

 BViewController *bb = [[BViewController alloc] init];

 UINavigationController* bNav = [[UINavigationController alloc]initWithRootViewController:bb];

 CViewController *cc = [[CViewController alloc] init];

 UINavigationController* cNav = [[UINavigationController alloc]initWithRootViewController:cc];

 DViewController *dd = [[DViewController alloc] init];

 UINavigationController* dNav = [[UINavigationController alloc]initWithRootViewController:dd];

 2.初始化tabbar

 UITabBarController *tabBarController = [[UITabBarController alloc]init];

 tabBarController.delegate=self;

 tabBarController.viewControllers=[[NSArray alloc]initWithObjects:ayNav,bNav,cNav,dNav,nil];

  3.获取到tabBarController中的tabBar,在从tabBar中获取到每个items

UITabBar *tabBar = tabBarController.tabBar;

 UITabBarItem *aTabBarItem = [tabBar.items objectAtIndex:0];

 UITabBarItem *bTabBarItem = [tabBar.items objectAtIndex:1];

UITabBarItem *cTabBarItem = [tabBar.items objectAtIndex:2];

UITabBarItem *dTabBarItem = [tabBar.items objectAtIndex:3];

  4. 设置tabBar中items的标题

aTabBarItem.title = @"小韩哥";

bTabBarItem.title = @"iOS编程";

cTabBarItem.title = @"ios开发";

dTabBarItem.title = @"苹果系统";

   5.设置tabBar中items的图片

[aTabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"aa_selected.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"1.png"]];

[bTabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"bb_selected.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"2.png"]];

[cTabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"cc_selected.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"3.png"]];

[dTabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"dd_selected.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"4.png"]];

    6.设置tabBar的背景图片

 UIImage* tabBarBackground = [UIImage imageNamed:@"tabbar1.png"];

 [[UITabBar appearance] setBackgroundImage:[tabBarBackground resizableImageWithCapInsets:UIEdgeInsetsZero]];

 [[UITabBar appearance] setSelectionIndicatorImage:[UIImage imageNamed:@"tabbar.png"]];


   7.改变tabBar中items上字体的颜色

[[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:

 [UIColor grayColor], UITextAttributeTextColor,

 nil nil] forState:UIControlStateNormal];

 UIColor *titleHighlightedColor = [UIColor colorWithRed:153/255.0 green:192/255.0 blue:48/255.0 alpha:1.0];

 [[UITabBarItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:

 titleHighlightedColor, UITextAttributeTextColor,

 nil nil] forState:UIControlStateHighlighted];

 8.将tabBarController加入window中

self.window.rootViewController = tabBarController;

[self.window makeKeyAndVisible];