不多說了,直接上代碼。複製可用
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];
}