Estoy luchando para entender el proceso de elaboración de SurfaceView
y por lo tanto el conjunto Surface
/ Canvas
/ Bitmap
sistema, que se utiliza en Android.
He leído todos los artículos y las páginas de documentación de la API, que pude encontrar en el sitio de desarrolladores de Android, algunos tutoriales de gráficos de Android, el código fuente de LunarLander y esta pregunta .
Por favor, dígame cuáles de estas afirmaciones son verdaderas, cuáles no y por qué.
Canvas
tiene el suyo propioBitmap
.Surface
tiene el suyo propioCanvas
.- Todas
View
las ventanas comparten lo mismoSurface
y, por lo tanto, comparten lo mismoCanvas
. SurfaceView
es una subclase deView
, que, a diferencia de otrasView
subclases y deView
sí misma, tiene la suya propiaSurface
.
También hay una pregunta adicional:
- ¿Por qué se necesita una
Surface
clase, si ya existe unaCanvas
para operaciones de alto nivel con mapa de bits? Dé un ejemplo de una situación en laCanvas
que no sea adecuado para hacer un trabajo queSurface
pueda hacer.