Tengo un NSTableView que se vuelve a cargar. Mientras se cargan datos nuevos, deseo agregar una subvista en la parte superior con un marcador giratorio. Me gustaría que la vista en la parte superior sea semitransparente y revele la vista debajo de ella, para que quede borrosa. ¿Cómo voy a hacer esto?¿Cómo agregar una vista borrosa en la parte superior de una vista?
Respuesta
La solución más fácil significativamente más que el -bitmapImageRepEtc:
uno, y más aplicable a Mac OS que la rasterización escala método es para configurar su vista de superposición para usar una capa de respaldo de Core Animation, luego dele a esa capa un filtro de desenfoque de la imagen principal. Es una técnica utilizada en todo el Mac OS, desde los menús del Dock hasta la barra de menú. Interface Builder hace que sea trivialmente fácil de configurar, pero se puede hacer en el código, así, como este:
CALayer *backgroundLayer = [CALayer layer];
[backgroundView setLayer:backgroundLayer];
[backgroundView setWantsLayer:YES];
CIFilter *blurFilter = [CIFilter filterWithName:@"CIGaussianBlur"];
[blurFilter setDefaults];
[backgroundView layer].backgroundFilters = [NSArray arrayWithObject:blurFilter];
¿Ha intentado cambiar el atributo Alfa de la vista (por transparencia)? También aquí hay un enlace en difuminación vistas: Blur Effect for UIView
yo preferiría llamar a este pixelada que borrosa. – Konrad77
La técnica básica sería la captación de la imagen de su punto de vista, el uso de algo así como el método de NSView
‑bitmapImageRepForCachingDisplayInRect:
, el procesamiento de la imagen para que sea borrosa (Core Image es su amigo aquí) y luego superponga su vista con un NSImageView
que contiene la imagen borrosa.
Ésta es falsedad, por supuesto, pero eso es lo que se trata de talento para el espectáculo :-)
Debe retirar RMBlurredView
en guthub: https://github.com/raffael/RMBlurredView
Es un fácil utilizar la subclase de NSView que hace todo eso por ti. ¡Asegúrese de establecer setWantsLayer:YES
en su vista principal!
Para más detalles, consulte el artículo Cocoanetics: http://www.cocoanetics.com/2013/10/blurring-views-on-mac/
- 1. ¿Cómo agregar una vista en la parte superior del teclado?
- 2. ¿Cómo agregar una vista a la parte superior de un diseño lineal en el código?
- 3. Cómo establecer la posición de desplazamiento en la parte superior de una vista de lista
- 4. iPhone: ¿Allanando una vista OpenGL transparente en la parte superior de una UIView?
- 5. Cómo agregar una vista detrás de otra vista en iOS
- 6. ¿Cómo hacer una vista de superposición personalizada transparente en la parte superior de un SurfaceView?
- 7. Agregar una referencia a una vista en ASP.NET MVC
- 8. Android RelativeLayout alinear el centro de una vista en la esquina superior derecha de otra vista
- 9. ¿Cómo agregar una nueva columna en una vista en sqlite?
- 10. ¿Cómo agregar una vista personalizada al diseño?
- 11. ¿Cómo agregar una vista programmattically a RelativeLayout?
- 12. Cómo agregar una vista personalizada a una vista definida de archivo XIB en monotouch
- 13. cómo agregar una vista de llamada personalizada en la vista de mapa
- 14. Agregar diseño como una vista en Android
- 15. cómo agregar una página de código subyacente a una vista o vista parcial
- 16. ¿Agregar nuevos elementos a la vista superior de la lista en Android?
- 17. Usando ListView: ¿Cómo agregar una vista de encabezado?
- 18. reproduciendo video en la parte superior de la vista OpenGL en android
- 19. Agregar navigationcontroller a la vista de detalles en vista dividida
- 20. Agregar vista en StatusBar en iPhone
- 21. detectar contacto en una vista detrás de otra vista?
- 22. Cómo agregar UIImagePickerController como una vista secundaria en lugar de Vista modal
- 23. Mostrar vista en una vista de desplazamiento en la pantalla
- 24. Cómo agregar libgdx como una vista en sub androide
- 25. ¿Por qué una imagen PNG a veces se vuelve borrosa en función de su posición en una vista?
- 26. ¿Cómo alinear una vista con el lado superior izquierdo de una ventana?
- 27. Cómo centrar una vista?
- 28. android - Cómo cortar una parte de la imagen y mostrarla en la vista de la imagen
- 29. Agregar una vista de texto a un FrameLayout en una posición determinada
- 30. ¿Cómo presionar una vista, regresar y volver a la vista?
Parece que esto solo funciona cuando la vista cubre por completo las otras vistas que se encuentran debajo. Cuando solo los cubre parcialmente, todo el área debajo de la vista está borrosa. – adib
Perdón por traer esto de vuelta a los muertos - ¿De qué framework (s) depende? SetLayer? – capikaw
Animación principal: QuartzCore.framework –