zoukankan      html  css  js  c++  java
  • UI进阶--UITabBarController简单介绍

    UITabBarController跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用。UITabBarController简单介绍中也有说过,为了便于管理控制器,iOS提供了2个比较特殊的控制器:UITabBarController控制器以及UINavigationController控制器。
     
    UITabBarController添加控制器的方式有2种:
    添加单个子控制器:
    - (void)addChildViewController:(UIViewController *)childController;
    设置子控制器数组:
    property(nonatomic,copy) NSArray *viewControllers;
    UITabBarButton里面显示什么内容,由对应子控制器的tabBarItem属性决定
    UITabBarItem有以下属性影响着UITabBarButton的内容
    1 //标题文字
    2 @property(nonatomic,copy) NSString *title;
    3 //图标
    4 @property(nonatomic,retain) UIImage *image;
    5 //选中时的图标
    6 @property(nonatomic,retain) UIImage *selectedImage;
    7 //提醒数字
    8 @property(nonatomic,copy) NSString *badgeValue;
    具体示例代码(在AppDelegate.m文件中):
     1 //1.创建窗口
     2     UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
     3     
     4 //2.设置窗口的根控制器 为Tabbar控制器
     5     
     6 // 2.1创建tabbar控制器
     7     UITabBarController *tabbarVc = [[UITabBarController alloc] init];
     8     
     9 // 2.2设置子控制器
    10     UIViewController *vc1 = [[UIViewController alloc] init];
    11     vc1.view.backgroundColor = [UIColor redColor];
    12     
    13 // 设置UITabbarButton的标题
    14     vc1.tabBarItem.title = @"联系人";
    15     vc1.tabBarItem.image = [UIImage imageNamed:@"tab_buddy_nor"];
    16     vc1.tabBarItem.badgeValue = @"12";
    17     //[tabbarVc addChildViewController:vc1];
    18     
    19     UIViewController *vc2 = [[UIViewController alloc] init];
    20     vc2.view.backgroundColor = [UIColor greenColor];
    21     //[tabbarVc addChildViewController:vc2];
    22     vc2.tabBarItem.title = @"动态";
    23     vc2.tabBarItem.image = [UIImage imageNamed:@"tab_qworld_nor"];
    24     
    25     
    26     UIViewController *vc3 = [[UIViewController alloc] init];
    27     vc3.view.backgroundColor = [UIColor yellowColor];
    28     //[tabbarVc addChildViewController:vc3];
    29     vc3.tabBarItem.title = @"设置";
    30     vc3.tabBarItem.image = [UIImage imageNamed:@"tab_me_nor"];
    31     
    32     
    33 //一次性添加tabbar的子控制器
    34     tabbarVc.viewControllers = @[vc1,vc2,vc3];
    35 //设置窗口的根控制器
    36     window.rootViewController = tabbarVc;
    37     
    38 // 3.设置窗口为主窗口并可见
    39     [window makeKeyAndVisible];
    40     self.window = window;

    最终效果:

  • 相关阅读:
    xadmin修改list_export_fields不生效以及添加exclude_export_fields功能
    Python正则总结
    Ubuntu安装Gitlab简记
    pytest使用总结笔记
    unittest使用数据驱动ddt
    unittest使用总结
    HTTP知识点总结
    HTTPS加密流程理解
    Requests库使用总结
    leetcode 76:最小字符串
  • 原文地址:https://www.cnblogs.com/xiaomoge/p/4201389.html
Copyright © 2011-2022 走看看