15

Esiste una spiegazione dettagliata di Surface, SurfaceHolder, EGLSurface, SurfaceView, GLSurfaceView, SurfaceTexture e TextureView? In particolare:Come utilizzare le classi "Surface" di Android?

  • Qual è la differenza tra SurfaceView e TextureView?
  • Devo utilizzare GLSurfaceView per utilizzare OpenGL ES?
  • Come interagiscono Surface e EGLSurface?
  • Cosa fa SurfaceTexture?
  • Perché le cose che disegno su SurfaceView devono andare sopra o sotto tutto il resto?
  • Che cos'è SurfaceFlinger?
  • Come funziona la composizione delle barre di stato e di navigazione?
  • Mentre ci siamo, qual è il modo giusto per strutturare un ciclo di gioco su Android?

risposta

17

Le risposte a queste ea molte altre domande si trova ora sul sito web Android Open Source Project:

Android System-Level Graphics

Il documento inizia con una spiegazione delle infrastrutture di basso livello, e quindi spiega come vengono create le funzionalità di livello superiore da esse. L'obiettivo non è fornire risposte dirette a domande comuni, ma piuttosto descrivere il sistema a un livello di dettaglio che rende le risposte evidenti senza essere schiaccianti.

La scelta del materiale e il livello di dettaglio sono stati pesantemente influenzati da Q & A su stackoverflow.

(Tecnicamente questa è una risposta link-solo, ma scrivere 10.000 parole qui sembrava una cattiva idea.)

+0

Mi piace come la domanda e la risposta sono scritti sullo stesso minuto. –

+1

@ LéonPelletier: http://stackoverflow.com/help/self-answer – fadden

+0

Grazie, non sapevo che fosse stato istituito. Ma sono rimasto più sorpreso del ritardo di 0 minuti. –