Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

Bitmap Problem

Das Thema "Bitmap Problem" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 23.12.2011, 11:57   #1 (permalink)
Fortgeschrittenes Mitglied

Modell: HTC Sensation

Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
Frage Bitmap Problem

Hallo,

ich hab mir eine kleine App gebastelt, wo ich drauf malen / schreiben kann (zwecks Unterschrift). Dafür hab ich einfach ne View genommen und erzeuge eine Bitmap und ein Canvas und male darauf.
Weiterhin hab ich eine Load- und Save-Funktion drin, um das aktuelle Bitmap zu Speichern oder zu Laden. Das klappt alles wunderbar.

Jetzt wollte ich eine Undo-Funktion einbauen, um z.B. die letzten 5 Schritte rückgängig zu machen. Sprich, die letzten 5 Bitmaps muß ich mir merken und bei einem Undo das vorletzte anzeigen.

Problem ist nun: ich hab die Bitmaps in eine ArrayList gelegt:
Code:
private ArrayList<Bitmap> listBitmaps = new ArrayList<Bitmap>();


if (listBitmaps.size() == 5) {
	listBitmaps.remove(0);
}
listBitmaps.add(bitmap);
die Bilder sind auch in der Liste vorhanden. Wenn ich allerdings nun ein Bild aus der Liste nehme, und genau wie beim Laden den gleichen Code nehme, um das Undo-Bild anzuzeigen, passiert einfach NICHTS.

hier das laden:
Code:
    public void loadBitmap() {
    	String path = Environment.getExternalStorageDirectory() + "/blabla/images/picture.png";
    	Bitmap bmp = BitmapFactory.decodeFile(path);
    	if (bmp != null) {
    		if (canvas != null) {
    			canvas.drawBitmap(bmp, 0, 0, null);
    			invalidate();
    		}
    	}
    }
hier undo:
Code:
Bitmap bmp = listBitmaps.get(undoCounter);
    if (bmp != null) {
        if (canvas != null) {
           canvas.drawBitmap(bmp, 0, 0, null);
           invalidate();
        }
    }
Der einzige Unterschied liegt darin, daß ich das Bild beim Laden von SD-Karte hole und beim Undo aus der ArrayList. Leider funktioniert das mit der ArrayList nicht, und ich weiß nicht wieso.

Hab mir jetzt temporär mal die Undo-Bilder auf die SD-Karte gespeichert, und siehe da, wenn ich sie dann Lade werden sie auch angezeigt.

Aber wieso funktioniert das mit der ArrayListe nicht? Ich leg doch die Bitmaps direkt rein. Kann mir jemand weiterhelfen?


Gruß,
Tom
Tom299 ist offline   Mit Zitat antworten
Alt 23.12.2011, 14:40   #2 (permalink)
Fortgeschrittenes Mitglied

Modell: HTC Sensation

Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
Standard AW: Bitmap Problem

oh man, nach mehrstündigem suchen und googlen hab ich es doch noch rausgefunden:

Code:
listBitmaps.add(bitmap.copy(Config.RGB_565, true));
man muß eine kopie der bitmap erzeugen und das true gibt an, daß es mutable ist. darauf muß man auch erst mal kommen ...


na dann frohe weihnachten
Tom299 ist offline   Mit Zitat antworten
Folgender Benutzer bedankt sich bei Tom299 für diesen Beitrag:
DieGoldeneMitte (23.12.2011)
Alt 23.12.2011, 15:49   #3 (permalink)
Android Experte
 
Benutzerbild von DieGoldeneMitte

Registriert seit: 05.02.2010
Beiträge: 609
Abgegebene Danke: 75
Erhielt 136 Danke für 119 Beiträge
Standard AW: Bitmap Problem

Ich hatte zwar schon den Verdacht, dass es etwas mit den darunter liegenden DS zu tun haben könnte. Aber da wäre ich nie drauf gekommen.

Frohes Fest!
__________________
Kein Support via PN/eMail. Bitte das Forum benutzen - dort haben alle etwas davon.
Bei Entwicklerfragen zu abstürzenden Apps bitte immer die Ausgabe von LogCat posten.
Tipp: Zum "Danke" sagen gibt es einen Button.
DieGoldeneMitte ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
Canvas Bitmap Problem error Android App Entwicklung 10 24.06.2011 09:10
Bitmap Dimensionen / Größe einspunktnull Android App Entwicklung 9 07.03.2011 18:20
bitmap in ImageButton vergrößern ben56a Android App Entwicklung 1 04.01.2011 11:47
byte array to Bitmap plaenker Android App Entwicklung 6 15.07.2010 15:03
Bitmap-Dimension und ImageView mago Android App Entwicklung 0 08.05.2010 23:56




Du liest gerade: "Bitmap Problem" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.