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 :

Affichage des images de la ListView dans une nouvelle Activity


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Par défaut Affichage des images de la ListView dans une nouvelle Activity
    salut,
    je veux créer une listView (images + informations). le clique sur l'un des items de la liste permet l'affichage de l'image dans une autre activité. j'ai crée la liste, mais le problème est l'affichage de l'image à la nouvelle activité.

    Merci d'avance

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur Java / C++
    Inscrit en
    Mars 2013
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java / C++

    Informations forums :
    Inscription : Mars 2013
    Messages : 128
    Par défaut
    Bonjour h_ta9wa,

    Nous avons besoin de précision sur votre problème:

    - Est-ce le lancement de la nouvelle activité?
    - Est-ce l'affichage de l'image que vous n'arrivez pas à mettre en place?
    - Est-ce le transfert du chemin de l'image d'une activité à une autre?

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 164
    Par défaut
    bonsoir,

    a la recharge de ton ListView stock ton url d'image dans un setTag, et dans un setOnItemListner recupére l'objet et prend ton url a partir du getTag()
    et voila t'as maintenant ton url renvoie le dans un intent a ton 2ém activité

  4. #4
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Par défaut
    Citation Envoyé par Minicalion Voir le message
    Bonjour h_ta9wa,

    Nous avons besoin de précision sur votre problème:

    - Est-ce le lancement de la nouvelle activité?
    - Est-ce l'affichage de l'image que vous n'arrivez pas à mettre en place?
    - Est-ce le transfert du chemin de l'image d'une activité à une autre?

    J'ai réussi à lancer la nouvelle activité.
    L'image se trouve sous le dossier "res/drawble" et elle s'affiche dans la listView
    le problème que j'ai envisagé est le transfert du chemin de l'image d'une activité à une autre.

  5. #5
    Membre expérimenté
    Homme Profil pro
    Développeur Java / C++
    Inscrit en
    Mars 2013
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java / C++

    Informations forums :
    Inscription : Mars 2013
    Messages : 128
    Par défaut
    Oki, dans ce cas, il te suffit d'utiliser la puissance des Intent:

    putExtras est une méthode permettant de "stocker" les données avant le lancement de l'activité

    http://developer.android.com/reference/android/content/Intent.html#putExtra%28java.lang.String,%20double[]%29

    getStringExtra est une méthode permettant de récupérer des données, de type String pour cette méthode, dans la nouvelle activité. Cette méthode existe pour la totalité des types de base il me semble, il suffit d’appeler get"nom du type"Extra.

    http://developer.android.com/referen...lang.String%29

    ces données sont géré par un système de clé/valeur.

    N'hésite pas si tu as besoin de plus de précision

  6. #6
    Membre habitué
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9
    Par défaut
    Citation Envoyé par Minicalion Voir le message
    Oki, dans ce cas, il te suffit d'utiliser la puissance des Intent:

    putExtras est une méthode permettant de "stocker" les données avant le lancement de l'activité

    http://developer.android.com/reference/android/content/Intent.html#putExtra%28java.lang.String,%20double[]%29

    getStringExtra est une méthode permettant de récupérer des données, de type String pour cette méthode, dans la nouvelle activité. Cette méthode existe pour la totalité des types de base il me semble, il suffit d’appeler get"nom du type"Extra.

    http://developer.android.com/referen...lang.String%29

    ces données sont géré par un système de clé/valeur.

    N'hésite pas si tu as besoin de plus de précision

    Salut,
    j'ai utilisé get"nom du type"Extra comme vous m'avez dit précédemment, mais j'ai pas réussi , le problème reste le même; l'image ne s'affiche pas dans la nouvelle activité.
    voila mon code, veuillez m'aider SVP:

    classe listImage.java
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    package com.example.menu;
     
    import java.util.ArrayList;
    import java.util.HashMap;
    import com.example.menu.actionBar.OnDispatchClickListener;
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.ListView;
    import android.widget.SimpleAdapter;
    import android.widget.TextView;
    import android.widget.AdapterView.OnItemClickListener;
     
    public class listImage extends Activity implements OnDispatchClickListener{
     
    	final String EXTRA_LOGIN = "user_login";
    	EditText login;
    	private Button b1;
    	private actionBar abar;
    	private TextView textView;
    	private ListView listView;
     
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.ouvrir);
     
    		login = (EditText)findViewById(R.id.edit);
     
    		abar = (actionBar)findViewById(R.id.actionbar);
    		abar.setTitle("Information");
    		abar.showButtonSearch();
    		abar.showButtonComment();
    		abar.setOnDispatchClickListener(this);		
     
    		textView= (TextView)findViewById(R.id.click);
     
    		listView = (ListView)findViewById(R.id.listviewperso);
    		ArrayList<HashMap<String, String>> listItem = new ArrayList<HashMap<String, String>>();
    		HashMap<String, String> map;
     
    		map = new HashMap<String, String>();
    		map.put("titre", "Coupe1");
    		map.put("description", "coupe1");
    		map.put("img", String.valueOf(R.drawable.coupe1));
    		listItem.add(map);
     
    		map = new HashMap<String, String>();
    		map.put("titre", "coupe2");
    		map.put("description", "coupe2");
    		map.put("img", String.valueOf(R.drawable.coupe2));
    		listItem.add(map);
     
    		map = new HashMap<String, String>();
    		map.put("titre", "coupe3");
    		map.put("description", "coupe3");
    		map.put("img", String.valueOf(R.drawable.coupe3));
    		listItem.add(map);
     
    		SimpleAdapter mAdapter = new SimpleAdapter(this.getBaseContext(), listItem, R.layout.affichageitem, new String[] {"img", "title", "description"}, new int[] {R.id.img, R.id.titre, R.id.description});
     
    		listView.setAdapter(mAdapter);
     
    		listView.setOnItemClickListener(new OnItemClickListener() {
     
    			@Override
    			public void onItemClick(AdapterView<?> a, View v, int position, long id) {
    				HashMap<String, String>map=(HashMap<String, String>)listView.getItemAtPosition(position);
     
    				Intent intent = new Intent (listImage.this, image.class);
    				startActivity(intent);
    			}
    		});
     
    		b1 = (Button)findViewById(R.id.b1);
     
    		b1.setOnClickListener(new View.OnClickListener() {		
    			@Override
    			public void onClick(View v) {
    				Intent intent = new Intent(listImage.this, image.class);
    				intent.putExtra(EXTRA_LOGIN, login.getText().toString());
    				startActivity(intent);			
    			}
    		});
    	}
     
    	@Override
    	public void onDispatchClick(int id) {
    		switch (id)
    		{
    			case R.id.ab_home:
    				textView.setText("Home");
    				break;
    			case R.id.ab_comment:
    				textView.setText("Informations");
    				break;
    			case R.id.ab_search:
    				textView.setText("Recherche");
    				break;
    		}
    	}
    }
    classe Image.java
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    package com.example.menu;
     
    import com.example.menu.actionBar.OnDispatchClickListener;
     
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
     
    public class image extends Activity implements OnDispatchClickListener {
     
    	final String EXTRA_LOGIN = "user_login";
    	private actionBar abar;
    	private Button b1;
    	private TextView textView;
    	TextView loginD;
     
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
     
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.image);
     
    		Intent intent = getIntent();
    		loginD = (TextView)findViewById(R.id.login);
    		if (intent != null)
    		{
    			loginD.setText(intent.getStringExtra(EXTRA_LOGIN));
    		}
     
    		abar = (actionBar)findViewById(R.id.actionbar);
    		abar.setTitle("Information");
    		abar.showButtonSearch();
    		abar.showButtonComment();
    		abar.setOnDispatchClickListener(this);		
     
    		textView= (TextView)findViewById(R.id.click);
     
    		b1 = (Button)findViewById(R.id.button1);
    		b1.setOnClickListener(new View.OnClickListener() {
     
    			@Override
    			public void onClick(View v) {
    				Intent intent = new Intent (getApplicationContext(), listImage.class);
    				startActivityForResult(intent, 1);
    			}
    		});
    	}
    	@Override
    	public void onDispatchClick(int id) {
    		switch (id)
    		{
    			case R.id.ab_home:
    				textView.setText("Home");
    				break;
    			case R.id.ab_comment:
    				textView.setText("Informations");
    				break;
    			case R.id.ab_search:
    				textView.setText("Recherche");
    				break;
    		}
    	}
    }

  7. #7
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 281
    Par défaut
    Il manque

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    intent.putExtra(KEY,VALUE);
    Dans ta classe de départ

Discussions similaires

  1. Réponses: 11
    Dernier message: 21/01/2013, 09h12
  2. [WD15] Affichage des donnes de fichier INI dans une table mémoire
    Par bestmoroco dans le forum WinDev
    Réponses: 7
    Dernier message: 17/10/2012, 20h15
  3. Affichage des résultats du khi-deux dans une table
    Par jenyo7 dans le forum SAS STAT
    Réponses: 14
    Dernier message: 29/04/2010, 15h03
  4. Réponses: 6
    Dernier message: 16/11/2009, 08h42
  5. Réponses: 3
    Dernier message: 24/11/2008, 14h09

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