嘗試將這些代碼放入ViewWillAppear/ViewDidAppear/didFinishLaunchingWithOptions
(在appDelegate的情況下)。
1)navigationItem.titleView = [[UIImageView alloc] initWithImage: [UIImage imageNamed:@"urtitlebar.png"]];
OR
2)
UIView *myView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 44)];
UIImageView *image = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"urtitlebar.png"]];
[image setFrame:CGRectMake(0, 0, 44, 44)];
[myView addSubview:image];
[self.navigationController.navigationBar addSubview:myView];
OR
3)
UINavigationBar *navBar = self.navigationController.navigationBar;
UIImage *image = [UIImage imageNamed:@"urtitlebar.png"];
[navBar setBackgroundImage:image];
EDIT:(如果你正在使用舊版本的SDK 3.2.5說)
創建的UINavigationBar
子視圖和覆蓋調用的方法 - drawRect:(CGRect)rect
用,
@implementation UINavigationBar (BackgroundImage)
- (void)drawRect:(CGRect)rect
{
UIImage *navBarImage;
image = [UIImage imageNamed: @"urNavigationBar.png"];
}
[navBarImage drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end
你有沒有嘗試這個? [[UINavigationBar appearance] setBackgroundImage:@「navImage」forBarMetrics:UIBarMetricsDefault]; – karthika
假設你在iOS 5+上工作? –
我正在使用xcode 4.2需要儘快升級:P – Gamerlegend