UITabBarController
是 iOS 中用于管理和显示选项卡界面的一个视图控制器。它允许用户在多个视图控制器之间进行切换,每个视图控制器对应一个选项卡。
主要功能
使用示例
创建和配置 UITabBarController
UITabBarController *tabBarController = [[UITabBarController alloc] init]; UIViewController *controller1 = [[UIViewController alloc] init]; controller1.view.backgroundColor = [UIColor redColor]; controller1.tabBarItem.title = @"新闻"; UIViewController *controller2 = [[UIViewController alloc] init]; controller2.view.backgroundColor = [UIColor yellowColor]; controller2.tabBarItem.title = @"视频"; UIViewController *controller3 = [[UIViewController alloc] init]; controller3.view.backgroundColor = [UIColor greenColor]; controller3.tabBarItem.title = @"推荐"; UIViewController *controller4 = [[UIViewController alloc] init]; controller4.view.backgroundColor = [UIColor lightGrayColor]; controller4.tabBarItem.title = @"我的"; [tabBarController setViewControllers:@[controller1, controller2, controller3, controller4]]; self.window.rootViewController = tabBarController;
通过设置 UITabBar
的属性来自定义选项卡栏的外观,例如:
背景颜色:
tabBarController.tabBarController.tabBar.barTintColor = [UIColor whiteColor];
选中项颜色:
tabBarController.tabBarController.tabBar.tintColor = [UIColor systemBlueColor];
未选中项颜色:
tabBarController.tabBarController.tabBar.unselectedItemTintColor = [UIColor grayColor];
Tab Bar Item 图标:
在每个视图控制器中设置
tabBarItem
属性。
controller1.tabBarItem.image = [UIImage systemImageNamed:@"house.fill"];
处理选项卡切换事件
通过实现 UITabBarControllerDelegate
协议来处理选项卡切换事件
tabBarController.delegate = self; - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{ NSLog(@"did select"); }
总结
UITabBarController
适用于需要在多个视图控制器之间切换的应用程序。可以创建更加用户友好和功能丰富的应用程序界面。