Che dimensioni hanno queste immagini? (Larghezza x Altezza, il peso in KB ce l'hai già detto prima, 20 KB mi pare)
Quante ne carichi contemporaneamente?
Che dimensioni hanno queste immagini? (Larghezza x Altezza, il peso in KB ce l'hai già detto prima, 20 KB mi pare)
Quante ne carichi contemporaneamente?
Ok hai sbagliato un bel po' di roba, ho riorganizzato un po' il tutto, ecco i files:
Il layout (res/layout/main.xml):
e il file res/values/strings.xml:
Così almeno sul mio acer liquid funziona senza problemi
Ovviamente nella cartella res/drawable ci devi mettere i files finale_0001.png, finale_0002.png eccetera!
FMsolution (19-08-10)
Grazie mille eafkuor, testato e funziona perfettamente effettivamete c'erano un pò di errori ero andato in panne con l'array di bitmap che non mi ero accorto degli errori, grazie ancora.
Le immagini sono 205x180 pixel profondità 32 bit, non mi sembrano molto grandi.
Significa che ogni immagine, decodificata, occupa 145 KB (205*180*4). 25 immagini sono 3.5 MB.
Su Android un'applicazione può occupare al massimo 16 MB (su dispositivi "vecchi") o 24 MB (sui "nuovi").
E` un po' strano che ti dia OutOfMemory così presto, a meno che tu non abbia veramente poca RAM sul dispositivo o che il resto del tuo programma non ne occupi molta.
In ogni caso ti converrebbe studiare qualche sistema di double o triple buffering, e quindi di usare solo 2 o 3 bitmap contemporaneamente in memoria, caricando le altre quando servono.
Bye.
Rieccomi, il problema si è ripresentato, ho provato a non fermare l'animazione ma ha creare un loop però al secondo ciclo si blocca e mi da outofmemory ecc.., non capisco ho ridotto anche le immagini sono 25 e di dimensione 11 kb mi sembra molto strano che non riesco ad eseguire una semplice animazione.
C'è un modo per monitorare le risorse e controllare quanta memoria viene utilizzata in un certo periodo.
Grazie,ciao.
Ma scusa il loop come lo fai? Non rimetti semplicemente n=0?
si ho risolto il questa maniera:
adesso funziona.
Credo che potresti eliminare il secondo if:
E magari potresti salvarti bitmapArrays.length -1 in modo da non doverlo far ricalcolare al processore ogni volta Ma sono solo finezze, di certo non gli ci vuole molto a fare una sottrazione o un if.