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

Stack Overflow

Das Thema "Stack Overflow" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 26.06.2011, 11:52   #1 (permalink)
Neuer Benutzer

Registriert seit: 26.06.2011
Beiträge: 3
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard Stack Overflow

Hi Alle,

Ich habe ein Problem. Ich möchte gerne in Activity ein
ViewFlipper, der aus vielen Bildern bestehen.
Beim Hinzufügen kriege ich aber ein OutOfMemoryException.

Der Codeschnitt sieht wie folgt aus:

Code:
 nFirst = 0x7f020000     // das erste Bild
 nLast = 0x7f020063     // das letzte Bild
  
 ViewFlipper flipper = (ViewFlipper) findViewById(R.id.ViewFlipper01);

 // ungefähr 100 Bilder, gesammt größe : 2,1 MB 
 for (i = nFirst; i < nLast; i++)
   {
      image = new ImageView(this);
      image.setImageResource(i);
      flipper.addView(image);
   }
Die Fehlermeldung :

Code:
06-26 09:46:20.541: WARN/dalvikvm(343): threadid=1: thread exiting with uncaught exception (group=0x40015560)
06-26 09:46:20.571: ERROR/AndroidRuntime(343): FATAL EXCEPTION: main
06-26 09:46:20.571: ERROR/AndroidRuntime(343): java.lang.OutOfMemoryError: bitmap size exceeds VM budget
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:460)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:336)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:697)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.content.res.Resources.loadDrawable(Resources.java:1709)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.content.res.Resources.getDrawable(Resources.java:581)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.widget.ImageView.resolveUri(ImageView.java:501)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.widget.ImageView.setImageResource(ImageView.java:280)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at gui.cevsen.Cevsen.onClick(Cevsen.java:110)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.view.View.performClick(View.java:2485)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.view.View$PerformClick.run(View.java:9080)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.os.Handler.handleCallback(Handler.java:587)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.os.Handler.dispatchMessage(Handler.java:92)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.os.Looper.loop(Looper.java:123)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at android.app.ActivityThread.main(ActivityThread.java:3683)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at java.lang.reflect.Method.invokeNative(Native Method)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at java.lang.reflect.Method.invoke(Method.java:507)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
06-26 09:46:20.571: ERROR/AndroidRuntime(343):     at dalvik.system.NativeStart.main(Native Method)
06-26 09:46:20.601: WARN/ActivityManager(67):   Force finishing activity gui.cevsen/.Cevsen
06-26 09:46:21.161: WARN/ActivityManager(67): Activity pause timeout for HistoryRecord{40573e70 gui.cevsen/.Cevsen}
Die Frage ist, kann/darf ich nicht so viele Bilder hinzufügen?

Danke im voraus.
ceoozan ist offline   Mit Zitat antworten
Alt 26.06.2011, 12:34   #2 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: Stack Overflow

das würde sich ja ganz leicht rausfinden lassen, wenn du einfach mal nur die hälfte nimmst
__________________
App Entwicklung
Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD )
swordi ist offline   Mit Zitat antworten
Alt 26.06.2011, 13:39   #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: Stack Overflow

Bei >10 Bildern würde ich ohnehin eher den ViewSwitcher nehmen. Da kannst Du die Bilder dann lazy und somit auch noch schneller laden.
__________________
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
Alt 26.06.2011, 14:45   #4 (permalink)
Neuer Benutzer

Registriert seit: 26.06.2011
Beiträge: 3
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: Stack Overflow

Ich bekomme den Fehler immer dann, wenn die gesammt größe 2MB überschreitet. Ich muss aber alle Bilder verwenden. Was ist aber lazy?
ceoozan ist offline   Mit Zitat antworten
Alt 26.06.2011, 17:34   #5 (permalink)
Android Guru

Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
Standard AW: Stack Overflow

er meint du sollst nicht alle bilder gleich reinladen.
einfach mal 3-5 bilder im speicher halten und beim weiterschalten einfach das letzte weglsöchen und vorne eines dazuladen.

so hast keine "gefühlten" ladezeiten und nur wenige bilder im speicher.
__________________
App Entwicklung
Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD )
swordi ist offline   Mit Zitat antworten
Alt 26.06.2011, 19:33   #6 (permalink)
Neuer Benutzer

Registriert seit: 26.06.2011
Beiträge: 3
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
Standard AW: Stack Overflow

Danke, ich probiere es.
ceoozan ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
Tipps / Erklärung für activity stack, tasks & bundles biker126 Android App Entwicklung 3 18.11.2010 19:39
Beenden alles auf Stack liegender activities. missG Android App Entwicklung 0 01.11.2010 14:49
Wifi Stack Crash bei 802.11x Netzwerken in 2.1 lephisto Motorola Milestone Forum 0 12.04.2010 10:05
Intent zugriff auf Stack derdiedas Android App Entwicklung 0 01.04.2010 10:13




Du liest gerade: "Stack Overflow" 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.