Bonjour,
comment passer les paramètres d'une activité à une listeView?
Bonjour,
comment passer les paramètres d'une activité à une listeView?
Tu pourrais préciser ?
Nous expliquer ce que tu souhaites faire (fonctionnellement) puis nous décrire techniquement la solution que tu aimerais mettre en place ?
Merci
Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum
je veux passer une donnée en cliquant sur un bouton pour afficher la liste des produits par exemple qui ont ce id
Il faut faire un onItemClickListener par exemple, comme expliqué ici :
http://mickael-lt.developpez.com/tut...iser-listview/
Après t'as une méthode qui reçoit un int :
Et là tu fais ce que tu veux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public void onClickTitre(int position) { switch(position){ case 0 : break;} }
Tu peux afficher une nouvelle vue, ou même afficher une nouvelle Activity.
Keith Flint 1969 - 2019
Donc techniquement ?
Tu as une première activité où tu choisie un ID.
Cet ID tu le passe à la seconde activité
Et tu voudrais que ta liste présente dans ta seconde activité s'actualise en fonction de l'ID reçue ?
C'est ça ? Sinon n'hésites pas à vraiment écrire beaucoup d'information pour qu'on te comprenne.
Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum
oui c'est ça
je passe le parametre mais la liste s'affiche avec tous les données que je possède
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 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.listeresto); mNoImage = this.getResources().getDrawable(R.drawable.icon); Bundle b = getIntent().getExtras(); final int index = b.getInt("position"); ArrayList<Place> places = ContainerPlace.getPlaces(); mesUrl = buildListImages(); ListRestoAdapter lfa = new ListRestoAdapter(this, places,mesUrl); ListView maListViewPerso = (ListView) findViewById(R.id.list); maListViewPerso.setAdapter(lfa); maListViewPerso.setDividerHeight(2); maListViewPerso.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> a, View v, int position, long id) { CallFunc(position); } private void CallFunc(int position) { Intent intent = new Intent(ListeResto.this , PlaceInfo.class); intent.putExtra("position",index); startActivity(intent); } }); }
Ben dans ton Activity ListeResto tu récupéré l'int que t'as envoyé en Extra, et selon sa valeur tu dessines une liste.
Keith Flint 1969 - 2019
j'ai déjà passer le paramètre ici
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Bundle b = getIntent().getExtras(); final int index = b.getInt("position");
Donc si je résume, ce que tu n'arrives pas à faire, c'est charger une liste d'items différentes dans ta listview en fonction d'un paramètre ?
Pourrais-tu nous montrer le code actuel pour initialiser ta liste ?
Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum
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 public class ListeResto extends Activity { ListView list; ListRestoAdapter adapter; private static Drawable mNoImage; private final static String SERVER_IM = "http://tourisme.thegass.net/tourismee/web/uploads/images/grid"; private ArrayList<String> mesUrl; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.listeresto); mNoImage = this.getResources().getDrawable(R.drawable.icon); Bundle b = getIntent().getExtras(); final int index = b.getInt("position"); ArrayList<Place> places = ContainerPlace.getPlaces(); mesUrl = buildListImages(); ListRestoAdapter lfa = new ListRestoAdapter(this, places,mesUrl); ListView maListViewPerso = (ListView) findViewById(R.id.list); maListViewPerso.setAdapter(lfa); maListViewPerso.setDividerHeight(2); maListViewPerso.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> a, View v, int position, long id) { CallFunc(position); } private void CallFunc(int position) { Intent intent = new Intent(ListeResto.this , PlaceInfo.class); intent.putExtra("position",index); startActivity(intent); } }); }
Non mais ta liste finale, elle doit être dans PlaceInfo, non ?
Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum
non celle la est la liste finale je recupere l'id depuis l'activité precedente
Je comprends plus rien alors à ton architecture
Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum
Bonjour,
Si tu veux filtrer ta liste en fonction de l'id reçue par l'activity parente alors à ce moment du code tu dois utiliser cet id .
Dans ce code tu récupères bien les places mais tu ne filtres pas avec ta variable index .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Bundle b = getIntent().getExtras(); final int index = b.getInt("position"); ArrayList<Place> places = ContainerPlace.getPlaces(); mesUrl = buildListImages(); ListRestoAdapter lfa = new ListRestoAdapter(this, places,mesUrl); ListView maListViewPerso = (ListView) findViewById(R.id.list); maListViewPerso.setAdapter(lfa);
Responsable Android de Developpez.com (Twitter et Facebook)
Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.
oui c'est ça le problème,est ce que le filtrage se fait dans l'adapter?
Mais non le filtrage ce fait dans l'Activity.
L'Adapter ça créer les lignes de le liste, donc rien à voir.
Il faut que selon le int que tu reçoit dans l'activity 2 tu envoi la bonne liste d'objet à l'adapter et après ça va te dessiner la liste avec les objets que tu veux.
Keith Flint 1969 - 2019
Le problème que j'arrive pas à faire ce filtrage
Peux tu nous montrer le code de
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part ContainerPlace.getPlaces();
Et aussi nous indiquer le paramètre sur lequel la restriction doit se faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part buildListImages();
Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum
Buildlistimage c'est une methode qui retourne l'ensemble des url des images
containerData.getplaces retournes tous les places que j'ai .Ces places je veux les filtrer en fonction de l'id
Ouais explique quel sont ces objets et comment tu veux les trier.
Après il existe plusieurs solution, par exemple une méthode qui reçoit une liste d'objet, qui fait un trie et qui retourne une nouvelle liste.
Après avec cette liste d'objet tu fais une ListView.
Edit :
Donne voir les attributs de tes classes et les critères de trie.
Keith Flint 1969 - 2019
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager