我在不使用 xib 文件的情况下以编程方式创建 NavigationBar。并创建一个带有文本“left”的左按钮,添加到导航栏,并将标题设置为“Demo”。
代码 :
-(void) createNavBar:(NSMutableArray *)arguments withDict:(NSMutableDictionary *)options
{
self.navBarController = [[[UINavigationController alloc] init] autorelease];
navBar = [navBarController navigationBar];
navBarController.navigationBar.bounds = CGRectMake(0, 0, 320, navBarHeight);
[navBarController.navigationBar setBackgroundImage:[[UIImage imageNamed:@"www/images/ios_hd_bg.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 0, 2, 0)]
forBarMetrics:UIBarMetricsDefault];
[navBarController view];
navBarController.navigationItem.title = @"title";
[navBarController.view setFrame:navBarController.navigationBar.bounds];
UIButton* button = [UIButton buttonWithType:UIButtonTypeCustom];
button = [self renderNavBarTextBtn:@"left" withButton:button direction:@"left"];
[navBar addSubview:button];
[[[self webView] superview] addSubview: navBarController.view];
}
但是,程序可以成功设置导航栏背景图片,显示左键,但无法设置标题。这么奇怪?
补充:我使用 cordova 框架来调用 . 并且该接口只是提供给cordova调用。感谢下面的答案,但我仍然无法解决我的问题。
截图:(注:显示左键不显示标题)