• 自定义tabbar


    新建一个继承UITabbar的类

    - (void)viewDidLoad {

        [super viewDidLoad];

        LFHomeTableViewController *home=[[LFHomeTableViewController alloc]init];

        [self addChildVC:home Title:@"首页" image:@"tabbar_home" selectedImage:@"tabbar_home_selected"];

        

        LFMessageTableViewController *discover=[[LFMessageTableViewController alloc]init];

        [self addChildVC:discover Title:@"消息" image:@"tabbar_message_center" selectedImage:@"tabbar_message_center_selected"];

        

        LFDiscoverTableViewController *message=[[LFDiscoverTableViewController alloc]init];

        [self addChildVC:message Title:@"发现" image:@"tabbar_discover" selectedImage:@"tabbar_discover_selected"];

        

        LFProfileTableViewController *profile=[[LFProfileTableViewController alloc]init];

        [self addChildVC:profile Title:@"我" image:@"tabbar_profile" selectedImage:@"tabbar_profile_selected"];

    }

    - (void)addChildVC:(UIViewController *)childVC Title:(NSString *)title image:(NSString *)image selectedImage:(NSString *)selectedImage

    {

        childVC.title=title;

        childVC.tabBarItem.image=[UIImage imageNamed:image];

        childVC.tabBarItem.selectedImage=[[UIImage imageNamed:selectedImage]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

        

        //设置文字的样式

        NSMutableDictionary *textAttrs=[NSMutableDictionary dictionary];

        textAttrs[NSForegroundColorAttributeName]=LFColor(123, 123, 123);

        [childVC.tabBarItem setTitleTextAttributes:textAttrs forState:UIControlStateNormal];

        

        NSMutableDictionary *selectTextAttrs=[NSMutableDictionary dictionary];

        selectTextAttrs[NSForegroundColorAttributeName]=[UIColor orangeColor];

        [childVC.tabBarItem setTitleTextAttributes:selectTextAttrs forState:UIControlStateSelected];

        childVC.view.backgroundColor=LFRandomColor;

        

        UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:childVC];

        [self addChildViewController:nav];

    }

     在AppDelegate.m文件中添加

       self.window.rootViewController=[[LFTabbarViewController alloc]init];就行了

    运行效果截图:

     

  • 相关阅读:
    O021、创建 Image
    O020、理解 Glance
    O019、通过例子学习 Keystone
    O018、理解 Keystone 核心概念
    O017、部署DevStack
    O016、搭建实验环境
    O015、OpenStack 架构
    O014、云计算与OpenStack
    O013、动手实践Linux VLAN
    O012、Linux如何实现VLAN
  • 原文地址:https://www.cnblogs.com/ITliufei/p/5250754.html
Copyright © 2020-2023  润新知