自定义ImagePickerViewController的时候,由于系统会在navigationBar上加上一层模糊效果,导致我们修改颜色的时候不能得到我们准确的效果,所以设置ImagePickerViewController的navigationBar为透明效果,在相册里面添加一个自定义的View充当navigationBar。
核心代码如下:
self.navigationBar.translucent = YES;
UIGraphicsBeginImageContext(CGSizeMake(OCWidth, 64));
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [UIColor clearColor].CGColor);
CGContextFillRect(context, CGRectMake(0, 0, OCWidth, 64));
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[self.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
self.navigationBar.clipsToBounds = YES;
这样我们就让navigationBar为透明了,该方法也可以用来修改其他UINavigationController的navigationBar效果。