0

I have an app that runs on IOS 7 and 8. On 8 I use UIBlurEffect with UIBlurEffectStyleLight which creates a beautiful vibrant blur. On IOS 7 I use IOS Blur library which seems very similar to UIBlurEffectStyleExtraLight in IOS 8. This creates a more fuzzy / white looking blur effect. Is there any way to make the IOS Blur (which is essentially just a UItoolbar overlay) on IOS 7, look more like UIBlurEffectStyleLight on IOS 8?

Thanks!

EDIT I was able to get an identical image by using Apple's UIImage+ImageEffects category and using applyLightEffect.

#import "UIImage+ImageEffects.h"
self.menu.image = [self.menu.image applyLightEffect];

Leaving this question open for now in case there are solutions that work for real time as well.

IOS 8 UIBlurEffectStyleLight

IOS 7 using IOS Blur

Glorfindel
  • 21,988
  • 13
  • 81
  • 109
Praneeth Wanigasekera
  • 946
  • 1
  • 10
  • 16

1 Answers1

0

UINavigationBar was the best real-time blur solution available in iOS7, but it has its limitations (and from an architecture point of view is a pretty horrible roundabout way to just get a blurred background on your view). There are ways to create blur images using the Accelerate framework in iOS7, but you're not going to get real-time performance out of it, so if you're planning to blur something that is moving or changing, you're stuck with UINavigationBar.

You can change the tint of the UINavigationBar to make it not be so white, but you can't set it to a clear tint to get a more accurate pixel colour blur -- it's always going to be tinted with either white or black first before applying your tint colour.

Ian MacDonald
  • 13,472
  • 2
  • 30
  • 51