我有一个全局背景图片(基本上是一些橙色),它是为AppDelegate中的所有导航栏设置的:
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"order-navbar"] forBarMetrics:UIBarMetricsDefault];
这适用于除一个以外的所有视图:我有一个MFMailComposeViewController,无论我做什么,导航栏背景都保持白灰色:
let mailController = MFMailComposeViewController()
mailController.navigationBar.tintColor = UIColor.whiteColor() // this works
emailController.navigationBar.setBackgroundImage(UIImage(named: "order-navbar") forBarMetrics:UIBarMetrics.Default) // this does not
UINavigationBar.appearance().setBackgroundImage(UIImage(named: "order-navbar") forBarMetrics:UIBarMetrics.Default) // this does neither
但是,有时邮件控制器首先出现橙色条,然后突然再次将其颜色更改为白灰色。
在iOS 8上一切正常。这是iOS 9的错误吗?