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

Android Discussion :

Recherche, trouver le rang dans la liste d'ArrayAdapter


Sujet :

Android

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 37
    Points : 21
    Points
    21
    Par défaut Recherche, trouver le rang dans la liste d'ArrayAdapter
    Bonjour tout le monde,
    J'ai réussi à faire une recherche sur une ListView qui marche très bien :

    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
     
    // initialisation de la liste grâce au message passé
    this.l = new ArrayList<String>();
    this.l = this.initialiserListe(message);
    Collections.sort(l);
    // création de la vue
    this.arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, l);
    vue = (ListView) findViewById(R.id.listView);
    vue.setAdapter(arrayAdapter);
     
    inputSearch = (EditText) findViewById(R.id.inputSearch);
     
    /**
     * Enabling Search Filter
     * */
    inputSearch.addTextChangedListener(new TextWatcher() 
    {
     
    	@Override
    	public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) 
    	{
    		EnglishWordList.this.arrayAdapter.getFilter().filter(cs);
    	}
     
    	@Override
    	public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {}
     
    	@Override
    	public void afterTextChanged(Editable arg0) {}
    });
    Cependant, quand je clique sur un item, je dois récupérer le rang dans la liste l pour le passer en paramètre à l'activité déclenché :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    vue.setOnItemClickListener(new AdapterView.OnItemClickListener() 
            {
        		@Override
        		public void onItemClick(AdapterView<?> adapterView, View view, int position,long id) 
        		{
        			Intent intent = new Intent(EnglishWordList.this, DisplayDefinition.class);
        			String m = EnglishWordList.this.l.get(position);
        			intent.putExtra(EXTRA_MESSAGE_ANGLAIS, m);
        			startActivity(intent);
        		}
            });
    Cependant le l.get(position) me renvoit 0, je ne sais pas comment faire pour prendre le rang de l'élément afficher pendant ou après un search. Une idée ?

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 37
    Points : 21
    Points
    21
    Par défaut
    au lieu de l.get(position), il fallait faire arrayAdapter.getItem(position);

    désolé pour ce post inutil x)

  3. #3
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,

    il fallait faire arrayAdapter.getItem(position);
    tu peux le faire également à partir de ton AdpaterView :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    adapterView.getItemAtPosition(position);
    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.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VB ExceptionHelper et Recherche d'un string dans string list
    Par chris81 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/06/2008, 10h01
  2. Trouver une valeur dans une liste
    Par Erwane dans le forum Scheme
    Réponses: 11
    Dernier message: 31/03/2008, 21h19
  3. Réponses: 7
    Dernier message: 09/08/2007, 14h07
  4. Recherche sur 2 elements dans une liste box.
    Par molarisapa dans le forum Access
    Réponses: 2
    Dernier message: 29/05/2006, 18h43
  5. Recherche d'un élément dans une liste triée (vitesse)
    Par Rodrigue dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 18/05/2006, 09h23

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