我有一个最终答案的附录。虽然基本方案是正确的,但可以改进使用部分透明颜色的技巧。我假设它只是让默认渐变显示出来。哦,同样,TabBar的高度是49像素而不是48像素,至少在OS 3中是这样。
因此,如果你有一个带有渐变的适当的1 x 49图像,这是你应该使用的viewDidLoad的版本:
- (void)viewDidLoad {
[super viewDidLoad];
CGRect frame = CGRectMake(0, 0, 480, 49);
UIView *v = [[UIView alloc] initWithFrame:frame];
UIImage *i = [UIImage imageNamed:@"GO-21-TabBarColorx49.png"];
UIColor *c = [[UIColor alloc] initWithPatternImage:i];
v.backgroundColor = c;
[c release];
[[self tabBar] addSubview:v];
[v release];
}