iOS开发-UITabbarController的介绍与使用
UITabBarController
是 iOS 中用于管理和显示选项卡界面的一个视图控制器。它允许用户在多个视图控制器之间进行切换,每个视图控制器对应一个选项卡。
主要功能
-
管理多个视图控制器:
UITabBarController
管理一个视图控制器数组,每个视图控制器对应一个选项卡。 -
显示选项卡栏:
在屏幕底部显示一个选项卡栏,允许用户在视图控制器之间进行切换。 -
处理选项卡切换:
响应用户的选项卡切换操作,并相应地显示相应的视图控制器。
使用示例
创建和配置 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
适用于需要在多个视图控制器之间切换的应用程序。可以创建更加用户友好和功能丰富的应用程序界面。
本文作者:机械心
本文链接:https://www.cnblogs.com/jianqiu/p/18276811
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步