xcode6 自定义UITabbarController

-(void)initTabBarView{
    if (tabBarController && [kAPPDELEGATE.navigationController.viewControllers containsObject:tabBarController]) {
        [kAPPDELEGATE.navigationController popToViewController:tabBarController animated:YES];
        return;
    }
    [kAPPDELEGATE.navigationController popToRootViewControllerAnimated:NO];
    [[UIApplication sharedApplication] setStatusBarHidden:NO];
    NSMutableArray *controllers = [NSMutableArray array];

    //UIImageRenderingModeAlwaysOriginal 图片按照原样渲染。
    {
        SchoolSecondHandViewController *vc = [[SchoolSecondHandViewController alloc] initWithNibName:nil bundle:nil];
        UITabBarItem *item = [[UITabBarItem alloc] initWithTitle: @"首页" image:[[UIImage imageNamed:@"tabbar_home"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] selectedImage:[[UIImage imageNamed:@"tabbar_home_press"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

        [item setTitleTextAttributes:[NSDictionary
                                      dictionaryWithObjectsAndKeys: [UIColor redColor],
                                      NSForegroundColorAttributeName, nil] forState:UIControlStateHighlighted];
        vc.tabBarItem = item;
        [controllers addObject:vc];
    }
    {

        CollectSomeThingViewController *vc = [[CollectSomeThingViewController alloc] initWithNibName:nil bundle:nil];
       UITabBarItem *item = [[UITabBarItem alloc] initWithTitle: @"首页" image:[[UIImage imageNamed:@"tabbar_home"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] selectedImage:[[UIImage imageNamed:@"tabbar_home_press"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
        [item setTitleTextAttributes:[NSDictionary
                                      dictionaryWithObjectsAndKeys: [UIColor redColor],
                                      NSForegroundColorAttributeName, nil] forState:UIControlStateHighlighted];
        vc.tabBarItem = item;
        [controllers addObject:vc];

    }
    {

        LossSomeThingViewController *vc = [[LossSomeThingViewController alloc] initWithNibName:nil bundle:nil];

        UITabBarItem *item = [[UITabBarItem alloc] initWithTitle: @"首页" image:[[UIImage imageNamed:@"tabbar_home"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] selectedImage:[[UIImage imageNamed:@"tabbar_home_press"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
        [item setTitleTextAttributes:[NSDictionary
                                      dictionaryWithObjectsAndKeys: [UIColor redColor],
                                      NSForegroundColorAttributeName, nil] forState:UIControlStateHighlighted];
        vc.tabBarItem = item;
        [controllers addObject:vc];

    }
    {

        MoreViewController *vc = [[MoreViewController alloc] initWithNibName:nil bundle:nil];
        UITabBarItem *item = [[UITabBarItem alloc] initWithTitle: @"首页" image:[[UIImage imageNamed:@"tabbar_home"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] selectedImage:[[UIImage imageNamed:@"tabbar_home_press"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
        [item setTitleTextAttributes:[NSDictionary
                                      dictionaryWithObjectsAndKeys: [UIColor redColor],
                                      NSForegroundColorAttributeName, nil] forState:UIControlStateHighlighted];
        vc.tabBarItem = item;
        [controllers addObject:vc];

    }

    tabBarController = [[UITabBarController alloc] initWithNibName:nil bundle:nil];
    tabBarController.delegate = self;
    tabBarController.tabBar.clipsToBounds = TRUE;

    {
        tabBarController.tabBar.tintColor = kDEFAULT_BG_COLOR;
        [[UITabBar appearance] setBackgroundImage:[ZQUtiles imageWithColor:kDEFAULT_BG_COLOR size:CGSizeMake(29, 1)]];//设置背景,修改颜色是没有用的

        [[UITabBar appearance] setSelectionIndicatorImage:[ZQUtiles imageWithColor:kDEFAULT_BG_COLOR size:CGSizeMake(29, 1)]];
    }
    [tabBarController setViewControllers:controllers];
    [kAPPDELEGATE.navigationController pushViewController:tabBarController animated:YES];
}
时间: 2024-10-15 00:16:19

xcode6 自定义UITabbarController的相关文章

自定义UITabBarController

最近发现一款和糗百差不多的应用叫<逗乐玩>,它的底部标签栏的效果不错,于是动手写了下,下面给出具体代码示例. #pragma mark - 自定义UITabBar - (void)createCustomTabBarView{ _backGroundImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, ScreenHeight - tab_hight, ScreenWidth, tab_hight)]; _backGround

自定义UITabBarController和TabBar

系统自带的UITabBarController,有个内置的UITabBar,在iOS7和iOS6中的风格完全不一样. ios7 ios6 那么如何自定义UITabBar呢 1.自定义UITabBarController:新建一个类,继承自UITabBarController 2.新建一个类,继承自UIView,用来做TabBar,封装内部按钮 3.在自定义的UITabBarController中创建自定义的TabBar,添加到默认的UITabBar上面

IOS开发之自定义UITabBarController

UITabBarController是开发中经常会用到的一个视图控制器,但是默认的UITabBarController经常不能够完全满足我们的需求,所以我们经常需要自定义一个UITabBarController. 接下来,我们就来自定义一个UITabBarController.首先我们应该明白一点,自定义一个UITabBarController的时候,其实大多数情况下我们需要修改的只是它下面的UITabBar,我们需要更加丰富的样式来满足我们的需求.接下来我们看一下具体操作! 第一步:创建一个类

iOS快速自定义UITabBarController内的tabbar控件

思路:1.定义一个BaseTabBarViewController类继承自UITabBarController 2.将原先的tabbar隐藏,自定义一个控件覆盖在上面 3.在控件内增加可以点击的按钮,调整控件和按钮的具体细节 具体代码如下:.h里#import <UIKit/UIKit.h>#import "FirstViewController.h"#import "SecondViewController.h"#import "ThirdV

自定义UITabbarController控制器

这是定制UITabbarController的基本原理,没有进行功能性封装. 效果:   源码地址: https://github.com/YouXianMing/Custom-TabbarController-Verson-One/tree/master 源码: // // ViewController.m // TabbarController // // Created by XianMingYou on 15/4/15. // Copyright (c) 2015年 XianMingYo

XCode6自定义pch文件

1.从XCode6开始,苹果不再提供自动生成的pch文件了,想使用的就要自己添加了,苹果的模板里有提供 2.在工程里Command + N, 新建文件,选择iOS模板下的Other中的PCH File 3.命名pch文件的时候我选择了跟XCode5中相同的命名方式,其中AnalyzerHD是我的项目名称,注意,Targets的2个选项我并没有选,点击Create 4.创建好了pch文件,接下来就要跟项目关联 5.选择Project -> Build Settings,然后搜索:Prefix He

UIkit框架(14)自定义标签控制器

自定义UITabBarController子类 UITabBarController的tabBar往往不能满足我们的需求 通过自定义UITabBarController子类自定义标签栏是经常采用的方式. 基本步骤: 1)定义UIButton子类作为标签按钮 2)定义模型类,管理每个页面的控制器以及对应标签栏上的数据 3)自定义标签栏 4)定义UITabBarController子类 定义标签按钮 添加两种创建方法:只显示图片和文字图片都显示的 + (AMTabBarButton *)tabBar

UITabBarController底层实现

1.首先要了解:任何控制器,都能添加自控制器 UIViewController里面有一个方法: - (void)addChildViewController:(UIViewController *)childController; 所有的控制器都继承自UIViewController 2.UITabBarController内部结构和管理原则 2.1 内部结构 UITabBarController内部有两个子控件,一个存放自控制器view的view    一个TabBar条 2.2 管理原则 T

UITabBar自定义tabbar如何隐藏和显示,超实用

这两天在做新闻客户端,遇到一个问题:如何将作为根视图控制器的自定义UITabBarController在主页转到子页时隐藏 self.tabbarcontroller.tabbar.hidden = YES; 这种方法只适用于系统的tabbar 我打印出了自定义tabbarcontroller和self.tabbarcontroller地址发现不一样 认识到这种误区,我就想办法找到我自定义的tabbarcontroller 我突然想到试图控制器的根控制器就是我自定义的tabbarcontroll