自定义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];
}

浙公网安备 33010602011771号