Domanda

Ho scritto lo stesso programma in due modi.

One tramite un SurfaceView, e l'altro con una visualizzazione personalizzata. Secondo la guida di sviluppo SDK di Android, utilizzando una superficie vista è meglio perché si può generare un thread separato per la grafica manico. Th Guida allo sviluppo SDK sostiene che utilizzando una visualizzazione personalizzata con le chiamate di invalidazione è buono solo per le animazioni più lente, grafica meno intenso.

Tuttavia, a mio semplice applicazione, posso vedere chiaramente che l'uso di una visualizzazione personalizzata con le chiamate per invalidare sembra rendere più veloce.

Cosa ragazzi sanno / pensi di questo?

Il mio codice TouchEvent è esattamente lo stesso, e il mio codice di disegno è esattamente lo stesso. L'unica differenza è che uno è tutto nel thread UI, e l'altro sta usando un battistrada per gestire il disegno.

È stato utile?

Soluzione

SurfaceView permette di lavorare su 2 buffer per il disegno, come circa la visualizzazione personalizzata?

Un'altra cosa: Lei ha detto che il dottore dice invalidate funziona veloce su animazioni più lente / grafica meno intense. Come intenso è il vostro "semplice app"? Si dovrebbe cercare di fare un test di stress e anche prendere in considerazione, come il singolo thread gestisce il touch-input.

Ho 3 discussioni nel mio gioco. Uno per logica di gioco, uno per il disegno e poi la "normale" thread UI ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top