iOS之UI--UITabBarController

时间:2021-01-17 21:15:57

前言:跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用。

iOS之UI--UITabBarController

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;
}

运行的效果(为了节省视觉空间,我故意设置为横屏):

iOS之UI--UITabBarController

接着再上代码:

    OneViewController* oneVC = [[OneViewController alloc] init];
[tabbarVC addChildViewController:oneVC];

tabbarVC是前面创建的UITabBarController对象,UITabBarController对象可以添加多个ViewController对象

然后UITabBarController当中有多少个子控制器,UITabBar当中就会有多少个按钮,按钮的宽度是平分。

比如如果按照前面的代码,添加了两个不同的ViewController对象,点击UITabBar平分的两块区域会出现不同的节目

iOS之UI--UITabBarController

另外再学一个代码:

    //设置启动界面后开始默认选中哪一个按钮的角标,要在添加完子控制器之后才能够有效果
tabbarVC.selectedIndex = ;

最后为TabBar设置每一个title和image:

iOS之UI--UITabBarController

最后的效果就完成了:

iOS之UI--UITabBarController

图片素材百度云备份下载链接: http://pan.baidu.com/s/1c0UMSu8 密码: 3tke