Ich muss ein Projekt zum Zeichnen auf Leinwand mit den Fingern erstellen,
um das Berührungs- und Bewegungsereignis meines Fingers zu erhalten und von dort zu zeichnen.
Jeder kann mir raten, wie ich mit dem Projekt anfangen soll.
und was ist die beste Komponente, um so etwas zu tun?
android
drawing
touch
android-canvas
Sameer H. Ibra
quelle
quelle
Antworten:
Beginnen Sie, indem Sie die Fingerpaint-Demo im SDK-Beispiel durchgehen.
Ein weiteres Beispiel:
Schnappschuss
Erklärung:
Sie erstellen eine Ansichtsklasse und erweitern dann Ansicht. Sie überschreiben onDraw (). Sie fügen den Pfad hinzu, auf dem der Finger berührt und sich bewegt. Sie überschreiben das onTouch () dieses Zwecks. In Ihrem onDraw () zeichnen Sie die Pfade mit der Farbe Ihrer Wahl. Sie sollten invalidate () aufrufen, um die Ansicht zu aktualisieren.
Um Optionen auszuwählen, können Sie auf das Menü klicken und die Optionen auswählen.
Das Folgende kann als Referenz verwendet werden. Sie können das Folgende entsprechend Ihren Anforderungen ändern.
Farbwähler
quelle
Canvas mCanvas
? weil Sie verwendenonDraw(Canvas canvas)
In Bezug auf den schönen Code von Raghunandan oben.
Viele haben gefragt, wie die Zeichnung "gelöscht" werden soll. So geht's:
Viele haben gefragt, wie die Zeichnung "gespeichert" werden soll. So geht's:
Hoffe es hilft jemandem, da mir das geholfen hat.
quelle
clearDrawing
Methode enthalten. Ich erhalte eine Ausnahme, da Höhe und Breite> 0 sein müssen. Dann habe ich mir den Code angesehen und festgestellt, dass diese Variablen nicht festgelegt sind. Also habe ich Sie gefragt, wie Sie die Werte für Breite und Höhe erhalten. PS Sie müssen anrufen,invalidate()
wenn Sie den Zeichenbereich aktualisieren möchten!Sie können diese Klasse einfach verwenden:
quelle
Tutorial zum Zeichnen von Linien Verwenden Sie die Klassen Bitmap, Canvas und Paint. Draw-Line-on-Finger-Touch und Androiddraw
hier eine einfache Klasse zum Zeichnen einer Linie mit Leinwand, wie unten gezeigt.
quelle
Ich denke, es ist wichtig, etwas hinzuzufügen. Wenn Sie die Layout-Inflation verwenden, bei der der Konstruktor in der Zeichnungsansicht nicht korrekt ist, fügen Sie diese Konstruktoren in die Klasse ein:
oder das Android-System kann die Layout-Datei nicht aufblasen. Ich hoffe das könnte helfen.
quelle
Zusätzlich zu Ishans Antwort können Sie die Klasse ein wenig so bearbeiten, wenn Sie programmgesteuert ohne Benutzerinteraktion zeichnen möchten.
Und dann benutze es gerne
Programmatisch zeichnen
quelle