我正在使用UIColor(patternImage:)
更改UINavigationBar
的颜色
UINavigationBar.appearance().barTintColor = UIColor(patternImage: UIImage(named: "Bar")!)
但是当我尝试使用UIActivityViewController在Facebook或Twitter上分享时,我收到了错误Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Only RGBA or White color spaces are supported in this situation
有没有其他方法可以实现这一目标?
*更新*
目前唯一可行的解决方案是更改所有ViewControllers中的每个UINavigationBar色调
self.navigationController?.navigationBar.barTintColor = UIColor(patternImage: UIImage(named: "Bar")!)
答案 0 :(得分:1)
尝试导航外观方法。
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.LightContent
UINavigationBar.appearance().setBackgroundImage(UIImage(named: "navBg.png"), forBarMetrics: UIBarMetrics.Default)
UINavigationBar.appearance().translucent = false
UINavigationBar.appearance().tintColor = UIColor.lightGrayColor()
注意:图像高度保持64像素。这个帮助。
在info.plist中添加密钥查看基于控制器的状态栏外观=否