2011-03-18 68 views
1

如何更改UIToolbar的背景图像?我已经能够做到这一点导航栏,但不是UIToolbar。我不想改变tintColor。我想改变整个图像。更改UIToolbar的背景图像

感谢您的帮助。

回答

5

Can I give a UIToolBar a custom background in my iPhone app?

重写的drawRect功能和创建UIToolbar的实现的伎俩:)

@implementation UIToolbar (CustomImage) 
- (void)drawRect:(CGRect)rect { 
    UIImage *image = [UIImage imageNamed: @"nm010400.png"]; 
    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)]; 
} 
@end 
+0

+1为您解答创新..伟大的工作!继续:-) – 2011-03-18 05:38:21

+0

@PARTH:谢谢:) – visakh7 2011-03-18 05:50:38

+0

感谢您的回答7KV7。我试过这个,它似乎不工作。为了清楚起见,我将这段代码放在需要新工具栏的视图控制器中,位于@implementation上方。我做错了吗? – Prasanna 2011-03-18 08:27:30

1

你可以使用下面的代码:

[myToolbar insertSubview:[[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"toolbar_40.png"]] autorelease] atIndex:0]; 

修正了模拟器4.3。

1

因为iOS5的你可以使用API​​外观:

[[UIToolbar appearance] setBackgroundImage:[UIImage imageNamed:@"someImage"] forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];