zoukankan      html  css  js  c++  java
  • 自定义UITabBar(原创)

    不多说了,直接上代码。复制可用

    CustomerTabBarController.h

    @interface CustomerTabBarController : UITabBarController {
    }
    @end
    
    

    CustomerTabBarController.m

    @implementation CustomerTabBarController
    //@synthesize tabBarTest;
    
    - (void)viewDidLoad {
    
    //方法一,使用颜色自定义UItabBar :
    	/*
        [super viewDidLoad];
    	CGRect frame = CGRectMake(0, 0, 320, 44);
    	UIView *v = [[UIView alloc] initWithFrame:frame];
    	UIColor *c = [[UIColor alloc] initWithRed:0.4 green:0.7 blue:0.3 alpha:1.0];
        v.backgroundColor = c;
        [c release];
    	[self.tabBar insertSubview:v atIndex:0];
        [v release];
    	NSLog(@"view did load");
    	 */
    
    //方法二,使用图片自定义UItabBar :
    	[super viewDidLoad];
    	UIImageView* image = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:PACKAGE_FILE_PATH(@"tabbar.png")]];
    	//image.frame = CGRectOffset(image.frame, 0, 5);
    	image.frame = CGRectMake(0, 0, 320,49);
    	[self.tabBar insertSubview:image atIndex:0];
    	[image release];
    }
    @end
    

    调用的地方:

     在*delegate.m众调用:

     

     

    -(void)setupViewControllers
    {
    	UINavigationController* localNavCtroller;
    	NSMutableArray* localViewCtrlArray =  [[NSMutableArray alloc] init];
    	
    	localNavCtroller = [self createNavControllerWrappingView:[HomeViewController class] tabIconName:nil tabTitle:nil];
    	[localViewCtrlArray addObject:localNavCtroller];
    	[localNavCtroller release];
    	
    	localNavCtroller = [self createNavControllerWrappingView:[StoredDataViewController class] tabIconName:nil tabTitle:nil];
    	[localViewCtrlArray addObject:localNavCtroller];
    	[localNavCtroller release];
    	
    	localNavCtroller = [self createNavControllerWrappingView:nil tabIconName:nil tabTitle:nil];
    	[localViewCtrlArray addObject:localNavCtroller];
    	[localNavCtroller release];
    	tabBarController.viewControllers = localViewCtrlArray;
    	[localViewCtrlArray release];
    }
    
    -(UINavigationController *)createNavControllerWrappingView:(Class)controller
    											   tabIconName:(NSString*)iconName
    												  tabTitle:(NSString*)tabTitle
    {
    	UIViewController* viewCtrller = [[controller alloc] init];
    	UINavigationController* theNavCtrller = [[UINavigationController alloc] initWithRootViewController:viewCtrller];
    	theNavCtrller.navigationBar.barStyle = UIBarStyleBlackTranslucent;
    	viewCtrller.tabBarItem.image = [UIImage imageNamed:iconName];
    	viewCtrller.title = NSLocalizedString(tabTitle, @"");
    	[viewCtrller release];
    	return theNavCtrller;
    }

    - (void)applicationDidFinishLaunching:(UIApplication *)application 

    {

    window = [[UIWindowalloc]initWithFrame:[[UIScreenmainScreen]bounds]];

        [windowmakeKeyAndVisible];

     tabBarController = [[CustomerTabBarControlleralloc] init];

    [selfsetupViewControllers];

    [windowaddSubview:tabBarController.view];

    }
  • 相关阅读:
    css3学习 之 css选择器(结构性伪类选择器)
    flash如何实现Enumeration
    带参数的正则匹配
    css学习记录(overflow:hidden)
    JavaScript的函数
    HTML5实现网站在windows8中的贴靠
    Modernizr 让网站进行优雅降级
    ASP.NET Web API教程(三) 增删改
    Compat Inspector 微软内部使用的兼容性检测工具
    Javascript 高级手势
  • 原文地址:https://www.cnblogs.com/moshengren/p/UITabBar.html
Copyright © 2011-2022 走看看