Heim > Web-Frontend > H5-Tutorial > Canvas- und Drawables-Übersetzung, Folge 1

Canvas- und Drawables-Übersetzung, Folge 1

黄舟
Freigeben: 2017-01-16 16:38:14
Original
1496 Leute haben es durchsucht

Offizielle Android-Originaltextadresse: http://developer.android.com/guide/topics/graphics/2d-graphics.html

------Die folgende Übersetzung spiegelt meine eigene Meinung wider. Es ist leicht zu verstehen. Die Übersetzung ist an vielen Stellen nicht sehr zutreffend, daher der englische Originaltext

Canvas and Drawables Zeichenbrett und Zeichnungen (die Zeichnungen sind dehnbare Zeichnungen)

IN DIESEM DOKUMENT

Zeichnen mit einer Leinwand

Auf einer Ansicht
Auf einer SurfaceView

Drawables

Erstellen aus Ressourcen
Bildern
Erstellen aus Ressource
XML

Shape Drawable
Nine-patch

SIEHE AUCH

OpenGL mit den Framework-APIs
RenderScript

Das Android Framework-APIs bieten eine Reihe von 2D-Zeichen-APIs, mit denen Sie Ihre eigenen benutzerdefinierten Grafiken auf einer Leinwand rendern oder vorhandene Ansichten ändern können, um deren Erscheinungsbild anzupassen. Beim Zeichnen von 2D-Grafiken tun Sie dies normalerweise in einer Es gibt zwei Möglichkeiten:
Android-Framework-APIs bieten eine Reihe von 2D-Zeichnungs-APIs, mit denen Sie Ihre eigenen benutzerdefinierten Grafiken (Grafiken) auf der Zeichenfläche (Canvas) rendern oder vorhandene Ansichten (Ansichten) ändern können, um sie anzupassen und Erfahrung. Beim Zeichnen von 2D-Grafiken gibt es im Allgemeinen zwei Möglichkeiten:

Zeichnen Sie Ihre Grafiken oder Animationen aus Ihrem Layout in ein Ansichtsobjekt. Auf diese Weise wird das Zeichnen Ihrer Grafiken durch den normalen Ansichtshierarchie-Zeichnungsprozess des Systems gehandhabt. Sie definieren einfach die Grafiken, die in
der Ansicht angezeigt werden sollen.
Zeichnen Sie Ihre Grafiken (Grafiken) oder Animationen über die Layoutdatei (Layout) in ein Ansichtsobjekt (Ansicht). Auf diese Weise wird das Zeichnen Ihrer Grafiken durch den regulären Zeichenprozess des Systems auf Ansichtsebene gehandhabt – Sie definieren die Grafiken einfach in Ihrer Ansicht. Diese Methode bezieht sich wahrscheinlich auf das in XML definierte Hintergrundbild oder das src-Attribut in ImageView.
Zeichnen Sie Ihre Grafiken direkt auf einen Canvas. Auf diese Weise rufen Sie persönlich die entsprechende Klasse

onDraw()
Nach dem Login kopieren
Methode

(Übergabe an Ihren Canvas) oder einen der Canvas
<🎜 auf >

).Dabei haben Sie auch die Kontrolle über jegliche Animation.
draw...()
Nach dem Login kopieren
Zeichnen Sie Ihre Grafiken (Graphics) direkt auf ein Zeichenbrett (Canvas). Bei dieser Methode müssen Sie onDraw( ) persönlich aufrufen. -Methode (Übergabe in Ihrem Canvas) oder eine der Canvas-Draw...()-Methoden (z. B. drawPicture()). Auf diese Weise können Sie auch beliebige Animationen steuern.


Option „a“, das Zeichnen in eine Ansicht, ist die beste Wahl, wenn Sie einfache Grafiken zeichnen möchten, die sich nicht dynamisch ändern müssen und nicht Teil eines leistungsintensiven Spiels sind Zeichnen Sie Ihre
Grafiken in eine Ansicht, wenn Sie eine statische Grafik oder eine vordefinierte Animation innerhalb einer ansonsten statischen Anwendung anzeigen möchten. Weitere Informationen finden Sie unter „Drawables“.
Option a, wenn Sie eine einfache Grafik zeichnen möchten (Grafik), diese Grafik muss sich nicht dynamisch ändern oder ist nicht Teil des leistungssteigernden Spiels. Zu diesem Zeitpunkt ist es die beste Wahl, die Grafik in eine Ansicht (Ansicht) zu zeichnen. Wenn Sie beispielsweise eine statische Grafik oder eine vordefinierte Animation anzeigen möchten, sollten Sie Ihre Grafik in eine Ansicht zeichnen.
Option „b“, das Zeichnen auf eine Leinwand, ist besser, wenn Ihre Anwendung sich regelmäßig neu zeichnen muss. Es gibt jedoch mehr als eine Möglichkeit >Um dies zu tun:
Option b: Wenn Ihre Anwendung sich rechtzeitig neu zeichnen muss, ist das Zeichnen in eine Leinwand die bessere Wahl. Beispielsweise sollte eine Videospielanwendung auf der Zeichenfläche gezeichnet werden. Wie auch immer, es gibt viele Möglichkeiten, dies zu tun.

Im selben Thread wie Ihre UI-Aktivität, in dem Sie eine benutzerdefinierte Ansichtskomponente in Ihrem Layout erstellen, rufen Sie


auf und
verarbeiten Sie dann die

invalidate()
Nach dem Login kopieren
Nach dem Login kopieren

Rückruf.
Erstellen Sie im selben Thread wie Ihre UI-Aktivität eine benutzerdefinierte Ansichtskomponente mit Ihrem Layout, rufen Sie die Methode invalidate() auf und verarbeiten Sie dann den Rückruf onDraw().

Oder in einem separaten Thread, in dem Sie einen
onDraw()
Nach dem Login kopieren


verwalten und
Zeichnungen auf der Leinwand so schnell ausführen, wie Ihr Thread dazu in der Lage ist (Sie müssen keine Anfrage stellen

SurfaceView
Nach dem Login kopieren

). Oder in einem separaten Thread, in dem Sie ein SurfaceView verwalten und Grafiken so schnell wie möglich auf die Leinwand zeichnen (Sie müssen Invalidate() nicht anfordern

).
invalidate()
Nach dem Login kopieren
Nach dem Login kopieren

Das Obige ist der Inhalt der ersten Episode der Canvas- und Drawables-Übersetzung. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage