背景色差,产生原因是如果单纯的设置背景颜色也是有高斯模糊处理的效果,对纯色高斯模糊处理过后相当于纯色的70%(猜测)透明化处理,但是反正就是有色差啦。

解决方法一:

 通过图片方法

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"Navigation_BackgroundImage"] forBarMetrics:UIBarMetricsDefault];

方法二:

self.navigationController.navigationBar.translucent = NO;//    Bar的模糊效果,默认为YES

下方黑色边框消除方法:

[[UINavigationBar appearance] setBackgroundImage:[[UIImage alloc] init] forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setShadowImage:[[UIImage alloc] init]];

设置阴影:

[[UINavigationBar appearance] setShadowImage:[[UIImage alloc] init]];

 

posted on 2015-09-16 11:03  墓厄  阅读(632)  评论(0编辑  收藏  举报