UITabBar backgroundImage
@property(nonatomic, retain) UIImage *backgroundImage
Discussion of [UITabBar backgroundImage]
A stretchable background image is stretched, a non-stretchable background image is tiled.
UITabBar backgroundImage example.
Like mentioned before on iOS 5 I would suggest you use the background image:
UITabBar *tabBar = tabController.tabBar;
if ([tabBar respondsToSelector:@selector(setBackgroundImage:)]) {
tabBar.backgroundImage = [UIImage imageNamed:@"TabBackground.png"];
}
UITabBar *tabBar = tabController.tabBar;
if ([tabBar respondsToSelector:@selector(setBackgroundImage:)]) {
tabBar.backgroundImage = [UIImage imageNamed:@"TabBackground.png"];
}
Example of [UITabBar backgroundImage].
// UITabBar+Custom.m
#import "UITabBar+Custom.h"
#import <QuartzCore/QuartzCore.h>
-(void)setTabBarBackground:(UIImage *)backgroundImage {
if([self respondsToSelector:@selector(setBackgroundImage:)]) {
// ios 5+
[self setBackgroundImage:backgroundImage];
} else {
// ios 3.x / 4.x
self.layer.contents = (id)backgroundImage.CGImage;
}
}
#import "UITabBar+Custom.h"
#import <QuartzCore/QuartzCore.h>
-(void)setTabBarBackground:(UIImage *)backgroundImage {
if([self respondsToSelector:@selector(setBackgroundImage:)]) {
// ios 5+
[self setBackgroundImage:backgroundImage];
} else {
// ios 3.x / 4.x
self.layer.contents = (id)backgroundImage.CGImage;
}
}
UITabBar backgroundImage example.
// not supported on iOS4
UITabBar *tabBar = [tabController tabBar];
if ([tabBar respondsToSelector:@selector(setBackgroundImage:)])
{
// set it just for this instance
[tabBar setBackgroundImage:[UIImage imageNamed:@"tabbar_brn.jpg"]];
// set for all
// [[UITabBar appearance] setBackgroundImage: ...
}
else
{
// ios 4 code here
}
UITabBar *tabBar = [tabController tabBar];
if ([tabBar respondsToSelector:@selector(setBackgroundImage:)])
{
// set it just for this instance
[tabBar setBackgroundImage:[UIImage imageNamed:@"tabbar_brn.jpg"]];
// set for all
// [[UITabBar appearance] setBackgroundImage: ...
}
else
{
// ios 4 code here
}