2011-01-02 4 views
1

Ich möchte die Anwendung "FingerPaint" ändern und Funktionen zum Rückgängigmachen und Wiederherstellen hinzufügen. Es zeichnet im Grunde Paths auf die Leinwand bei onDraw-Methode und zeichnet die gleichen Pfade zu einer Bitmap. Jedenfalls war mein erster Gedanke, Bitmaps als Dateien zu speichern, aber es könnte einen effizienteren Weg geben. Ich warte auf Vorschläge.Hinzufügen der Funktion "Rückgängig machen" der Anwendung "FingerPaint" (eine Beispielanwendung von google)

Antwort

1

Sie können eine neue Leinwand, schieben Sie es auf einen Stapel, legen Sie es auf dem gleichen width und height erstellen und dann drawImage() mit der großen Leinwand als das erste Bild, um den Inhalt über kopieren. Um dies rückgängig zu machen, gehen Sie den Stapel hinunter und verwenden Sie drawImage() in umgekehrter Reihenfolge. (Lassen Sie den Stapel nicht los, sonst können Sie ihn nicht wiederherstellen.)

+0

Nette Idee, aber haben Sie irgendein Beispiel? –

+0

@iDroidExplorer Nein, ich habe keine vorgefertigten. Welchen Teil davon kannst du nicht machen? – Phrogz

+0

Eigentlich mache ich diese Art von Farbe: http://stackoverflow.com/questions/9748206/android-how-to-do-this-framing-paint Aber jetzt ist mit der Undo/Redo-Funktionlity stecken geblieben. Das kann ich nicht. Brauchen Sie Hilfe in diesem Fall. –

Verwandte Themen