我在iOS7 gm中使用UINavigationBar外观自定义UINavigationBar BackgroundImage,而不是在UIPopoverController中工作。 我将此代码段用于iOS7 gm,
[[UINavigationBar appearance] setBackgroundImage:navigationBarBackgroundImage forBarMetrics:UIBarMetricsDefault];
以上代码在AppDelegate中设置
答案 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”]]];