2012-01-01 104 views
3

我有一个tabbarcontroller被推到navigationController上。我试图改变标签栏的背景颜色但是它不工作:iOS TabBarController背景颜色

UIViewController *viewController1, *viewController2; 
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { 
     viewController1 = [[Tab1_iPhone alloc] initWithNibName:@"tab1_iPhone" bundle:nil]; 
     viewController2 = [[Tab2_iPhone alloc] initWithNibName:@"tab2_iPhone" bundle:nil]; 
    } 
    self.tabBarController = [[UITabBarController alloc] init]; 

    CGRect frame = CGRectMake(0.0, 0.0, 480, 48); 
    UIView *v = [[UIView alloc] initWithFrame:frame]; 
    [v setBackgroundColor:[UIColor blueColor]]; //003366 
    [v setAlpha:1.0]; 
    [[self.tabBarController tabBar] insertSubview:v atIndex:0]; 


    self.tabBarController.viewControllers = [NSArray arrayWithObjects: viewController1, viewController2, nil]; 
    [self.navigationController setNavigationBarHidden:YES]; 
    [self.navigationController pushViewController:self.tabBarController animated:YES]; 

    [self.window makeKeyAndVisible]; 

这是我上一个类似的职位,改变背景颜色看到代码:

CGRect frame = CGRectMake(0.0, 0.0, 480, 48); 
    UIView *v = [[UIView alloc] initWithFrame:frame]; 
    [v setBackgroundColor:[UIColor blueColor]]; //003366 
    [v setAlpha:1.0]; 
    [[self.tabBarController tabBar] insertSubview:v atIndex:0]; 

我做有问题?

感谢

+1

尝试addSubview,而不是insertSubview – craig1231 2012-01-01 23:11:51

回答

4

下面的代码可以帮助您与RGB值添加自定义颜色,UR的TabBar。

self.tabBarController.tabBar.tintColor = [[UIColor alloc] initWithRed:0.00 
                  green:0.62 
                  blue:0.93 
                  alpha:1.0]; 
+0

这不会更改背景颜色,只有选项卡栏图标的颜色 – 2017-05-25 14:49:16