IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants graphiques Android Discussion :

android.widget.imageview probléme affichage


Sujet :

Composants graphiques Android

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    501
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 501
    Points : 102
    Points
    102
    Par défaut android.widget.imageview probléme affichage
    Bonsoir, je souhaiterais mettre des images dans une tableau d'image comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     /** Items entered by the user is stored in this ArrayList variable */
    	    ArrayList<ImageView> list = new ArrayList<ImageView>();
    
    
    
    Bitmap yourSelectedImage = BitmapFactory.decodeFile(filePath);
    						    ImageView iv = new ImageView(context);
    						    iv.setImageBitmap(yourSelectedImage);
    list.add(iv);
    mais au lieu que l'image s'affiche, j'ai android.widget.imageview qui s'affiche à la place dans ma liste

    Une idée les amis

    merci

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Le code remplit effectivement une liste d'objets "ImageView"... mais ou sont-ils rajoutés dans l'interface ? (dans l'arborescence des views)

    Quel est le but recherché ? Parceque qu'une liste de ImageView (et par conséquent de Bitmap) va prendre une place folle en mémoire
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    501
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 501
    Points : 102
    Points
    102
    Par défaut
    Salut, je n'est pas rajouté de view dans le fichier xml, j'ai fait qu'une nouvelle instance d'une image vue.

    Mon but et de creer un arrayList d'image avec un adaptateur avec des cases a cocher à coté de chaque image pour les supprimer.
    Le code pour récupérer les case cocher pour les supprimer, etc et fait, tout focntionne mais il me manque plus que l'image à coté de cette case a cocher.
    De plus l'utilisateur insérer lui même ses images via in INTENT de galerie dout le filePath "Bitmap yourSelectedImage = BitmapFactory.decodeFile(filePath);", cela décrit pourquoi je sais pas le nombre de view à l'avance

    Une sorte de ListView mais avec case a cocher

    En espérant que vous avez un minimum compris mon intention
    Merci

  4. #4
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Salut, je n'est pas rajouté de view dans le fichier xml, j'ai fait qu'une nouvelle instance d'une image vue.
    Oui, j'ai bien vu ... new ImageView() etc...
    Mais cette "view" si elle n'est insérée dans aucune arborescence (liée à la fenêtre, c'est à dire à l'activité) ne sera jamais affichée.


    Ensuite ma remarque concernait l'utilisation de Bitmap...
    Prenons un exemple: mes images font 4128 x 3096 pixels... soit encore... décompressées... 48Mo ...
    Une application mobile ne pourra donc en charger *qu'une seule en mémoire* sinon c'est OutOfMemoryError assuré !

    La lecture d'une image (depuis un fichier) pour affichage dans l'interface n'est pas un truc aussi simple que: Bitmap xxx = BitmapFactory.decodeFile(...);
    Il faut optimiser cette lecture pour la taille d'affichage voulue !
    Voir ici: http://developer.android.com/trainin...ad-bitmap.html

    Et même dans ce cas là... disons que l'image prenne 1/3 de l'écran en largeur, sur mon mobile cela fait encore du 380Ko en mémoire... on sera donc limité à une centaine d'entre elles.
    D'ou l'interêt de passer par une ListView, et un Adapter qui fera un "cache" de ces images....
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    501
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 501
    Points : 102
    Points
    102
    Par défaut
    Oui, mais concernant la vu, je ne sait pas combien à l'avance je vais avoir de picture, c'est l'utilisateur qui ajoute les données dans la ListView

    Jusqu'a maintenant je faisais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ArrayList<String> list = new ArrayList<String>();
     
    list.add(ma chaine string);

    Maintenant je voudrais, après récupération du résultat de mon INTENT

    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
    34
    35
    36
    37
    38
    39
    protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) { 
    		      super.onActivityResult(requestCode, resultCode, imageReturnedIntent); 
    		   
    		      switch(requestCode) { 
    		      case SELECT_PHOTO:
    		          if(resultCode == RESULT_OK){  
    		        	  
    		        	  Uri selectedImage = imageReturnedIntent.getData();
    		              String[] filePathColumn = {MediaStore.Images.Media.DATA};
    
    		              Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null);
    		              cursor.moveToFirst();
    
    		              int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
    		              String filePath = cursor.getString(columnIndex);
    		              cursor.close();
    		              
    		              
    		              
    		              Bitmap yourSelectedImage = BitmapFactory.decodeFile(filePath);
    						    //ImageView iv = new ImageView(context);
    						    
    						    //imageView.setImageBitmap(yourSelectedImage);
    						    //imageView.setAdjustViewBounds(true);
    						File file = new File(filePath);
    			        	FileDataSource datasource = new FileDataSource(file); 
    			        	 
    			        	InsertObectToArray(datasource);
    				      
    			        	
    			        	list.add(datasource.getName());
    			        	
    			        	adapter.notifyDataSetChanged();
    			        	
    			      
    		          }
    		      }
    		    }
    récupérer l'image du filePath
    list.add(mon image par son filePath);

    Une idée

Discussions similaires

  1. Widget MatplotLib : problème d'affichage
    Par mokochan dans le forum PyQt
    Réponses: 18
    Dernier message: 24/02/2014, 15h46
  2. problème affichage google Map android V2
    Par mayssa_salhi dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 22/02/2014, 10h45
  3. Problém affichage maps view android
    Par othman22222 dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 03/06/2013, 10h23
  4. Réponses: 0
    Dernier message: 08/11/2012, 10h52
  5. Problème affichage de Views (TextView, ImageView)
    Par Ryu2000 dans le forum Composants graphiques
    Réponses: 9
    Dernier message: 19/04/2011, 11h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo