iOS7GM UINavigationBar外观setBackgroundImage:forBarMetrics:无法在UIPopoverController中工作

时间:2013-09-24 14:41:33

标签: uinavigationbar ios7 uipopovercontroller

我在iOS7 gm中使用UINavigationBar外观自定义UINavigationBar BackgroundImage,而不是在UIPopoverController中工作。 我将此代码段用于iOS7 gm,

[[UINavigationBar appearance] setBackgroundImage:navigationBarBackgroundImage   forBarMetrics:UIBarMetricsDefault];

以上代码在AppDelegate中设置

2 个答案:

答案 0 :(得分:4)

当导航控制器位于弹出框内时,其导航栏的外观设置为与弹出窗口的背景相匹配。

要自定义弹出窗口的背景,您应该使用自定义UIPopoverBackgroundView类。

答案 1 :(得分:1)

由于setBackgroundImage:forBarMetrics:在弹出窗口中包含的导航控制器和setBackgroundColor:工作正常时不起作用,我们可以将背景图像用作背景颜色的图案,如下面的某个导航栏: BR />

  

[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@“NavigationBarBG”]]];

或者对于所有导航栏:

  

[[UINavigationBar appearance] setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@“NavigationBarBG”]]];