IOS开发之如何创建UITabBarController
白羽 2018-06-07 来源 :网络 阅读 1192 评论 0

摘要:​UITabBarController是选项卡栏导航控制器,显示效果是在页面底部有多个选项卡,通过点击不同选项卡可以在不同的ViewController之间进行切换。 希望本文对大家学IOS有所帮助。


UITabBarController是选项卡栏导航控制器,显示效果是在页面底部有多个选项卡,通过点击不同选项卡可以在不同的ViewController之间进行切换。

 

这种对象的层次结构至少包含6个对象:

一个UITabBarController;

两个UIViewController;

一个UITabBar;

两个UITabBarItem;

 

UITabBarController是选项卡栏视图控制器,UITabBar是底部两个UITabBarItem的容器,管理两个UITabBarItem,每个UITabBarItem对应一个UIViewController,然后每个UIViewController都有自己的视图和视图控制器。

 

UITabBarController中有一个viewControllers属性,这是一个NSArray,包含选项卡控制器的视图控制器

 

下面来用代码创建一个UITabBarController:

下面是工程结构:

IOS开发之如何创建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开发之如何创建UITabBarController

 


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之IOS频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程