iOS5 设置 NavgationBar and toolbar 背景
2011-10-19
在 iOS5 SDK 中原来设置 NavgationBar 背景的方法不能用了.
// disabeld in iOS5
@implementation UINavigationBar (NavgationBackground)
-(void)drawRect:(CGRect)rect {
[[UIImage imageNamed:@"Navbar_bg.png"] drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end
@implementation UIToolbar (CustomImage)
- (void)drawRect:(CGRect)rect {
[[UIImage imageNamed:@"toolbar_bg.png"] drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end
iOS5 中的方法为
#pragma mark - set NavgationBar toolbar background
- (void)setNavgationBarBg:(UINavigationBar *)navbar
{
UIImage * TitleBarImage = [UIImage imageNamed:@"Navbar_bg.png"];
if([navbar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)])
{
[navbar setBackgroundImage:TitleBarImage forBarMetrics:UIBarMetricsDefault];
}
}
- (void)setToolbarBg:(UIToolbar *)toolbar
{
UIImage * toolbarImage = [UIImage imageNamed:@"toolbar_bg.png"];
if ([toolbar respondsToSelector:@selector(setBackgroundImage:forToolbarPosition:barMetrics:)])
[toolbar setBackgroundImage:toolbarImage forToolbarPosition:UIToolbarPositionBottom barMetrics:UIBarMetricsDefault];
}