Faccio fatica a capire il processo di disegno SurfaceView
e quindi l'intero sistema Surface
/ Canvas
/ Bitmap
, che viene utilizzato in Android.
Ho letto tutti gli articoli e le pagine di documentazione delle API, che sono riuscito a trovare sul sito degli sviluppatori Android, alcuni tutorial sulla grafica Android, il codice sorgente di LunarLander e questa domanda .
Per favore dimmi quali di queste affermazioni sono vere, quali non lo sono e perché.
Canvas
ha il suoBitmap
allegato ad esso.Surface
ha il suoCanvas
allegato ad esso.- Tutte
View
le finestre condividono lo stessoSurface
e quindi condividono lo stessoCanvas
. SurfaceView
è una sottoclasse diView
, che, a differenza delle altreView
sottoclassi e diView
se stessa, ha le sue proprieSurface
a cui attirare.
C'è anche un'altra domanda:
- Perché c'è bisogno di una
Surface
classe, se esiste già unaCanvas
per operazioni di alto livello con bitmap. Fornisci un esempio di una situazione in cuiCanvas
non è adatto per fare un lavoro cheSurface
può fare.