How do you use Visual Effect Views with Blur and Vibrancy in Interface Builder?
I've dragged this item out into the View, then dragged a UILabel
onto the last view in the hierarchy - the vibrant effect's contentView
I assume. This results in a blurred view overtop but there is no label visible. Anywhere else I place the label in the hierarchy it does become visible but it's just solid black text.
Finally figured it out.
- In a
UIViewController
change the view's background to blue - Drag a Visual Effect Views with Blur and Vibrancy object into the view, so it's added as a subview
- In the first Visual Effect View, set up Auto Layout constraints to its containing View: Leading, Trailing, Top, and Bottom (to make the blur effect fill the screen)
- Expand the View that is a subview of the first Visual Effect View to reveal a second Visual Effect View
- Set up Auto Layout constraints for this Visual Effect View, again set all edges to its containing View to fill the screen - be sure to change the constants to 0
- Expand the second Visual Effect View to reveal the final View
- Drag a
UILabel
into the scene as a subview of the last View - Set up Auto Layout constraints for this label to its containing View - perhaps Leading and Top with constants of 15
- Change the text color of the label to pure white with 0.5 alpha
- Change the Style to Dark for both Visual Effect Views in the Attributes Inspector (just to show the effect better)
- Run the app on a device that supports the full vibrant effect (iPhone 5+, iPad Air+)
Voila!
And this is how it looks in Interface Builder:
来源:https://stackoverflow.com/questions/26559087/how-to-implement-visual-effect-views-in-interface-builder