IOS7 navigatinBar tintColor改变了popover

时间:2013-09-30 13:13:15

标签: ios ios7 uipopovercontroller navigationcontroller

我开发了iPad应用程序。我用导航控制器在popover中打开一些屏幕。但我没有在IOS 7中更改导航控制器色调颜色。如何更改此颜色。感谢名单

enter image description here

UINavigationController *navigationController = [[[UINavigationController alloc] initWithRootViewController:airportsSearch] autorelease];
navigationController.navigationBar.barTintColor = [UIColor blackColor];
navigationController.navigationBar.translucent = NO;
self.popOver=[[UIPopoverController alloc] initWithContentViewController:navigationController];

self.popOver.delegate                    = self;
[self.popOver setPopoverContentSize:CGSizeMake(285, 370)];

[self.popOver presentPopoverFromRect:tempButton.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionLeft animated:YES];

2 个答案:

答案 0 :(得分:35)

这里的神奇词是barStyle,如果你需要黑色,你需要做以下事情:

navigationController.navigationBar.barStyle = UIBarStyleBlack;
navigationController.navigationBar.translucent = NO;

如果你想改变它的颜色:

navigationController.navigationBar.barTintColor = [UIColor redColor];
navigationController.navigationBar.barStyle = UIBarStyleBlack;
navigationController.navigationBar.translucent = NO;

答案 1 :(得分:6)

将NavigationBarStyle设置为UIBarStyleBlack对我来说也很有用,但只能通过故事板。

我试过

[[UINavigationBar appearance] setBarStyle:UIBarStyleBlack];

以及

[[UINavigationBar appearanceWhenContainedIn:[UIPopoverController class], nil] setBarStyle:UIBarStyleBlack];
在didFinishLaunchingWithOptions AppDelegate方法中。但没有改变。只更改 Storyboard 中NavigationControllers NavigationBar的BarStyle工作。