Was ist in Android der Unterschied zwischen der View- und der Surface View-Klasse?


Antwort 1:

Warum SurfaceView und nicht die klassische View-Klasse verwenden ...

Ein Hauptgrund ist, dass SurfaceView den Bildschirm schnell rendern kann.

Mit einfachen Worten, ein SV ist besser in der Lage, das Timing zu verwalten und Animationen zu rendern.

Um besser zu verstehen, was eine SurfaceView ist, müssen wir sie mit der View-Klasse vergleichen.

Was ist der Unterschied ... überprüfen Sie diese einfache Erklärung im Video

Das Bild zeigt, wie eine View-Klasse in einer Anwendung funktioniert…

Nun, mit der Ansicht haben wir ein großes Problem ... das Timing des Renderns von Animationen.

Normalerweise wird onDraw () vom Android-Laufzeitsystem aufgerufen.

Wenn das Android-Laufzeitsystem onDraw () aufruft, kann die Anwendung nicht steuern

das Timing der Anzeige, und dies ist wichtig für die Animation. Wir haben eine zeitliche Lücke

zwischen der Anwendung (unserem Spiel) und dem Android-Laufzeitsystem.

Das Bild zeigt, wie eine SurfaceView-Klasse in einer Anwendung funktioniert…

Der SV kann onDraw () von einem dedizierten Thread aufrufen.

Also: Die Anwendung steuert das Timing. So können wir das nächste Bitmap-Bild der Animation anzeigen.