摘要:UITabBarController是选项卡栏导航控制器,显示效果是在页面底部有多个选项卡,通过点击不同选项卡可以在不同的ViewController之间进行切换。 希望本文对大家学IOS有所帮助。
UITabBarController是选项卡栏导航控制器,显示效果是在页面底部有多个选项卡,通过点击不同选项卡可以在不同的ViewController之间进行切换。
这种对象的层次结构至少包含6个对象:
一个UITabBarController;
两个UIViewController;
一个UITabBar;
两个UITabBarItem;
UITabBarController是选项卡栏视图控制器,UITabBar是底部两个UITabBarItem的容器,管理两个UITabBarItem,每个UITabBarItem对应一个UIViewController,然后每个UIViewController都有自己的视图和视图控制器。
UITabBarController中有一个viewControllers属性,这是一个NSArray,包含选项卡控制器的视图控制器
下面来用代码创建一个UITabBarController:
下面是工程结构:
首先创建两个带xib文件的ViewController,分别为FirstViewController和SecondViewController
然后在AppDelegate.h中声明@property (strong,nonatomic)UITabBarController *tabBarController;,并添加协议UITabBarControllerDelegate
在.m中实现如下代码:
[cpp] view plain copy
1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
2. {
3. self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
4. // Override point for customization after application launch.
5.
6. //第一个tab的viewController
7. FirstViewController *firstViewController = [[FirstViewController alloc]init];
8.
9. //如果在这里指定tabitem标题,则在FirstViewController中指定self.tabBarItem.title则不生效
10. firstViewController.title = @"First view";
11.
12. UITabBarItem *firstItem = [[UITabBarItem alloc]initWithTitle:@"First" image:nil tag:1];
13. [firstItem setFinishedSelectedImage:[UIImage imageNamed:@"p1"] withFinishedUnselectedImage:[UIImage imageNamed:@"p1_f"]];
14. firstViewController.tabBarItem = firstItem;
15.
16.
17. SecondViewController *secondViewController = [[SecondViewController alloc]init];
18.
19. //构建TabBarItem
20. UITabBarItem *secondItem = [[UITabBarItem alloc]initWithTitle:@"Second" image:nil tag:2];
21.
22. //设置选中和非选中状态下的图片
23. [secondItem setFinishedSelectedImage:[UIImage imageNamed:@"p2_f"] withFinishedUnselectedImage:[UIImage imageNamed:@"p2"]];
24. //右上角小图标
25. [secondItem setBadgeValue:@"2"];
26. //指定tabBarItem
27. secondViewController.tabBarItem = secondItem;
28. [secondItem release];
29.
30. //构建UITabBarController并指定代理为本身
31. self.tabBarController = [[[UITabBarController alloc]init] autorelease];
32. self.tabBarController.delegate = self;
33.
34. //为UITabBarController添加TabBarItem
35. self.tabBarController.viewControllers = [NSArray arrayWithObjects:firstViewController,secondViewController, nil];
36.
37. [firstViewController release];
38. [secondViewController release];
39.
40. //设置选中哪个tab
41. // [self.tabBarController setSelectedIndex:0];
42.
43. //指定根视图
44. self.window.rootViewController = self.tabBarController;
45.
46. self.window.backgroundColor = [UIColor whiteColor];
47. [self.window makeKeyAndVisible];
48. return YES;
49. }
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之IOS频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号