前言:跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用。
UITabBarController的使用步骤:
初始化UITabBarController
设置UIWindow的rootViewController为UITabBarController
根据具体情况,通过addChildViewController方法添加对应个数的子控制器
接着上代码:
在AppDelegate.m文件的的第一个方法中敲一下代码(小贴士:对于代码的阅读莫过于打开XCode再不看源码快速敲出来然后对比学习哦!不要只是看看而已):
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //AppDelegate有一个window对象的引用,所以需要传递一个具体实例对象
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
//创建一个UITabBarController对象
UITabBarController* tabbarVC = [[UITabBarController alloc] init];
//将UITabBarController对象设置为self.window的根控制器
self.window.rootViewController = tabbarVC;
//最后,让self.window显示出来
[self.window makeKeyAndVisible]; return YES;
}
运行的效果(为了节省视觉空间,我故意设置为横屏):
接着再上代码:
OneViewController* oneVC = [[OneViewController alloc] init];
[tabbarVC addChildViewController:oneVC];
tabbarVC是前面创建的UITabBarController对象,UITabBarController对象可以添加多个ViewController对象
然后UITabBarController当中有多少个子控制器,UITabBar当中就会有多少个按钮,按钮的宽度是平分。
比如如果按照前面的代码,添加了两个不同的ViewController对象,点击UITabBar平分的两块区域会出现不同的节目
另外再学一个代码:
//设置启动界面后开始默认选中哪一个按钮的角标,要在添加完子控制器之后才能够有效果
tabbarVC.selectedIndex = ;
最后为TabBar设置每一个title和image:
最后的效果就完成了:
图片素材百度云备份下载链接: http://pan.baidu.com/s/1c0UMSu8 密码: 3tke