自定义UITabBar的背景图片或者颜色

    技术2022-05-18  13

    默认的UITabBarControllertabBar背景色是黑色的。有时我们的应用需要变更背景色,或用指定图片做为背景图。 如下有两处实现方法, 这两种方法均需要先实例UITabBarController app的创建的是基于UITabBarController的应用,可将如下代码加入到AppDelegate 的委托方法didFinishLaunchingWithOptions:

     

    方法一:

     

    UITabBarController  *tabBarController = [[UITabBarController alloc] init];

    CGRect frame = CGRectMake(0, 0, 320, 49);

    UIView *v = [[UIView alloc] initWithFrame:frame];

    UIImage *img = [UIImage imageNamed:@"tabbar.png"];

    UIColor *color = [[UIColor alloc] initWithPatternImage:img];

    v.backgroundColor = color;

    [tabBarController.tabBar insertSubview:v atIndex:0];

    tabBarController.tabBar.opaque = YES;

    [color release];

    [v release];

    方法二:

     

    默认UITabBarController的tabBar背景是黑色的。可以按 下面方法:

    UITabBarController  *tabBarController = [[UITabBarController alloc] init];

    NSArray *array = [tabBarController.view subviews];

    UITabBar *tabBar = [array objectAtIndex:1];

    UIImage *image = [UIImage imageWithContentsOfFile:sourcePath ];

    tabBar.layer.contents = (id)image.CGImage;

     

    个人推荐使用第二种方法。代码简洁,思路清晰


    最新回复(0)