Frage

Ich schrieb das gleiche Programm auf zwei Arten.

Ein einen Surface verwenden, und die andere eine benutzerdefinierte Ansicht verwenden. Nach dem Android SDK Development Guide, eine Oberflächenansicht verwendet, ist besser, weil Sie einen separaten Thread Griff Grafiken erzeugen kann. Th SDK Entwicklung Führung behauptet, dass mit Invalidier Anrufen eine benutzerdefinierte Ansicht verwenden ist nur gut für die langsameren Animationen, weniger intensive Grafiken.

Doch meine einfache Anwendung, ich kann deutlich sehen, dass bei Anrufen zu entkräften eine benutzerdefinierte Ansicht mit schneller zu machen scheint.

Was ihr wissen / davon halten?

Mein Touchcode ist genau das gleiche, und meine Zeichnung Code ist genau das gleiche. Der einzige Unterschied besteht darin, dass man alle in dem UI-Thread ist, und der andere wird mit einer Lauffläche, um die Zeichnung zu handhaben.

War es hilfreich?

Lösung

Surface ermöglicht, die Arbeit an zwei Puffern zum Zeichnen, wie über Ihre benutzerdefinierte Ansicht?

Eine andere Sache: Sie erwähnt, dass der Doc sagt invalidate arbeitet schnell auf langsamere Animationen / weniger intensiven Grafiken. Wie intensiv ist Ihr „einfache Anwendung“? Sie sollten versuchen, einen Stresstest zu tun und auch in Betracht ziehen, wie sich die einzelnen Thread behandelt Ihre Touch-Eingabe.

Ich habe 3 Fäden in meinem Spiel. Ein für Spiellogik, ein für Zeichnen und dann dem „normalen“ UI-Thread ...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top