prefacio
En este artículo, cómo juzgar la representación fuera de pantalla se basa en Debug Color Off-screen Rendered
. Consulte este artículo sobre qué es la representación fuera de pantalla .
Ejemplo de representación fuera de pantalla
1. Configure las esquinas redondeadas de UIImageView para activar las condiciones de representación fuera de la pantalla:
- Asigne un valor a la
cornerRadius
propiedad . masksToBounds
a SÍ.- Llame para configurar la imagen
setImage
para imageView.
Las condiciones anteriores son indispensables.
Ejemplo de código:
self.imageView.layer.cornerRadius = 20;
self.imageView.layer.masksToBounds = YES;
[self.imageView setImage:[UIImage imageNamed:@"123"]];
复制代码
Cabe señalar que la simple modificación de cornerRadius y masksToBounds no provocará una representación fuera de pantalla.
2. Dibuja una sombra para la vista.
Ejemplo de código:
self.grayView.layer.cornerRadius = 10;
self.grayView.layer.shadowRadius = 10;
self.grayView.layer.shadowOpacity = 0.2;
复制代码
Cuando usamos el código anterior para dibujar una sombra en la vista, provocará una representación fuera de la pantalla.
Solución: Dibuje la ruta de la sombra para evitar que el sistema abra una nueva área de búfer para dibujar la ruta.
self.grayView.layer.shadowPath = [[UIBezierPath bezierPathWithRect:self.grayView.bounds] CGPath];
复制代码
De esta forma, no provocará una renderización fuera de pantalla.