Pregunta

Aquí está la configuración:

Tengo un NSView que es una vista CALayer respaldados, y contiene muchas CALayers. Tengo un CALayer para el 'fondo' de la vista, y muchas pequeñas CALayers que son subcapas. A veces, este punto de vista puede ser muy grande (tan grande como 2560x1400), y cuando lo hace hay un retraso muy notable en los CALayers. Mi conjetura es que Core Animation tiene algunos problemas con muy grandes CALayers.

Por lo tanto, me gustaría cambiar esta capa 'fondo' de ser un CALayer a tal vez un CGLayer o algo así, donde quedaría como un CGLayer normal a la vista. Sin embargo, en la parte superior de la misma, los pequeños CALayers continuaría operando, tal como lo hacen ahora. De esa manera sólo tengo pequeños CALayers, la capa 'fondo' puede ser almacenado en caché en una CGLayer, y espero que el rendimiento se incrementará significativamente.

Alguien sabe cómo esto podría lograrse?

¿Fue útil?

Solución

Después de investigar más, que no se ve como esto se puede lograr. Un NSView es bien respaldado CALayer, o no lo es.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top