I looked at this: How to use UIVisualEffectView? but I don't really understand how to apply it to my situation, after even looking at the comments.
I have a class SpecialHUD
which is a subclass of HUDView
which is a subclass of UIView
. HUDView
has its layer.contents set to be a background image (certain rectangle with rounded edges), and text in a label added as a subview. I can't change HUDView
. I only need to change SpecialHUD
.
I want the background image to act as the thing that blurs whatever is behind it - I can't get rid of the background image.
How do I use the UIVisualEffectView
with my SpecialHUD
?
I tried adding this to an update method in my SpecialHUD
:
UIVisualEffect *blurEffect;
blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
UIVisualEffectView *visualEffectView;
visualEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
visualEffectView.frame = self.bounds;
[self addSubview:visualEffectView];
[[visualEffectView contentView] addSubview:self.label];
But it blurs everything in the rectangular container, and disregards the image — I'm not sure how to make everything work together.