UItabBarController

创建UItabBarController可以分为4个步骤:

1:初始化UItabBarController

2:设置UIWindow的rootViewController为UItabBarController

3:创建相应的子控制器

4:把子控制器加到UItabBarController中

在YYAppDelegate.m中

didFinishWithOptions方法中,添加代码,使得代码如下:

{

self.window=[[UIWindow alloc]initWithFrame:[UIScreen mainScreen]bounds]];

self.window.backgroundColor=[UIColor redColor];

1:初始化UItabBarController

UItabBarController *tab=[[UItabBarController alloc]init];

2:设置UIWindow的rootViewController为UItabBarController

self.window.rootViewController=tb;

3:创建相应的子控制器

UIViewController *vc1=[[UIViewController alloc]init];

vc1.view.backgroundColor=[UIColor grayColor];

vc1.tabBarItem.title=@"消息";//命名

vc1.tabBarItem.image=[UIImage imageNamed:@"tab_information"];//没有选中时的图片

vc1.tabBarItem.selectedImage=[UIImage imageNamed:@"tab_selected_information"];//选中时的图片

vc1.tabBarItem.badgeValue=@"123";//提醒数字

若是一次性创建好tabBarItem可以用:

UITabBarItem *item=[[UITabBarItem alloc]initWithTitle:@"消息" image:[UIImage imageNamed:@"tab_information"]  tag:1];

tag就是标签,方便以后查找。

也可以用系统样式初始化:

UITabBarItem *item=[[UITabBarItem alloc]initWithTabBarSystemItem: UITabBarSystemItemHistory  tag:0];

 但是用系统样式的初始化方式,在设置title,image就无效了。

vc1.tabBarItem=item;

用同样的方法创建vc2,vc3,vc4

4:把子控制器加到UItabBarController中

tab.viewControllers=@[vc1,vc2,vc3,vc4];一次性添加4个viewController

若是添加一个一个添加可以用 [tb addChildViewController:vc1];

[self.window makeKeyAndVisible];

return YES;

}

这样tabBar上面就有4个不同的UITabBarItem了,点击不同的UITabBarItem展示不同的View,被选中的view处于显示状态,其他view处于卸载状态,UItabBarController中各个视图控制器的生命周期与UItabBarController相同。

原文地址:https://www.cnblogs.com/summerxx/p/5268714.html