Bonjour,
Je suis confronté au problème suivant:
Je souhaite afficher une succession d'images dans le même ImageView. Un traitement (doSomething) est faire sur la Bitmap avant chaque affichage.
Le problème est que seule la dernière image en fin de boucle est affichée.
Existe t-il un moyen de forcer l'affichage à chaque itération ? Je joins un extrait du code en java.
L'application est lancée sur l'émulateur Android sous Eclipse
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ImageView mIV; sdcard = Environment.getExternalStorageDirectory(); files = sdcard.listFiles(); for (int y=0; y<files.length; y++) { try { File file = files[y]; String dbfile1 =sdcard.getAbsolutePath()+File.separator+file.getName(); if (file.isFile()) { int dotposition= file.getName().lastIndexOf("."); String ext = file.getName().substring(dotposition+1, (int)file.getName().length); if ((ext.equalsIgnoreCase("jpg")) || (ext.equalsIgnoreCase("jpeg")) || (ext.equalsIgnoreCase("png"))) { Bitmap b1 = BitmapFactory.decodeFile(dbfile1); mFaceBitmap = b1.copy(Bitmap.Config.RGB_565, true); newFaceBitmap = android.graphics.Bitmap.createScaledBitmap (mFaceBitmap, 200, 200, true); b1.recycle(); doSomething(newFaceBitmap); mIV.setImageBitmap(newFaceBitmap); mIV.invalidate(); } } catch(Exception e) { System.out.println("error ...."); } }
Partager