iOS开发-UITabbarController的介绍与使用

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一个视图控制器。它允许用户在多个视图控制器之间进行切换,每个视图控制器对应一个选项卡。

主要功能

  1. 管理多个视图控制器
    UITabBarController 管理一个视图控制器数组,每个视图控制器对应一个选项卡。

  2. 显示选项卡栏
    在屏幕底部显示一个选项卡栏,允许用户在视图控制器之间进行切换。

  3. 处理选项卡切换
    响应用户的选项卡切换操作,并相应地显示相应的视图控制器。

使用示例

创建和配置 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 适用于需要在多个视图控制器之间切换的应用程序。可以创建更加用户友好和功能丰富的应用程序界面。

posted @ 2024-06-30 18:56  机械心  阅读(78)  评论(0编辑  收藏  举报