zoukankan      html  css  js  c++  java
  • UITabBarController(标签栏控制器)

    一、标签栏控制器的基本概念

          UITabBarController 继承于视图控制器,通过标签栏项的形式来管理视图控制器,各个标签栏项之间的视图控制器彼此独立,互不影响。

        (1)UITabBarController中各个视图控制器的生命周期与UITabBarController的生命周期是一致的;

        (2)点击不同的标签栏项(UITabBarItem),展现不同的视图控制器的View;

        (3)被选中的标签栏项对应的视图控制器的View处于显示状态,其他视图控制器的View处于卸载状态。

    二、标签栏控制器的优点

        (1)使应用程序模块化,各个模块之间低耦合,团队开发易于分工;

        (2)应用程序的扩展性强,可以根据需求选择性的增、删模块。

    三、标签栏控制的创建

    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
        self.window.backgroundColor = [UIColor whiteColor];
        [self.window makeKeyAndVisible];
        RootViewController *rootCtrl = [[RootViewController alloc] init];
        //创建导航控制器
        UINavigationController *navCtrl = [[UINavigationController alloc] initWithRootViewController:rootCtrl];
        navCtrl.title = @"首页";
        //创建视图
        UIViewController *vc1 = [[UIViewController alloc] init];
        vc1.title = @"收藏";
        UIViewController *vc2 = [[UIViewController alloc] init];
        vc2.title = @"搜索";
        UIViewController *vc3 = [[UIViewController alloc] init];
        vc3.title = @"设置";
        NSArray *controllers = [NSArray arrayWithObjects:navCtrl,vc1,vc2,vc3,nil];
        
        //创建标签栏控制器的实例
        UITabBarController *tabCtrl = [[UITabBarController alloc] init];
        
        //将存有视图控制器实例的数组赋给tabCtrl
        tabCtrl.viewControllers = controllers;
        //默认选择第2个视图选项卡(索引从0开始的)
    
        tabCtrl.selectedIndex = 1;
        //把tabBarController的view作为子视图添加到window
        self.window.rootViewController = tabCtrl;
  • 相关阅读:
    动态数据源切换
    Disconf实践指南:改造篇
    Disconf实践指南:使用篇
    Disconf实践指南:安装篇
    执行Git命令时出现各种 SSL certificate problem 的解决办法
    linux rz 乱码
    分布式配置项管理-开源方案预研究
    mac下mysql5.7.18修改root密码
    git 版本回滚
    关于@Autowired使用注意点
  • 原文地址:https://www.cnblogs.com/hecheng0314/p/4483747.html
Copyright © 2011-2022 走看看