Autore Topic: Problema ricerca in una listView  (Letto 665 volte)

Offline Mikykly91

  • Utente junior
  • **
  • Post: 91
  • Respect: 0
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    Htc one, Nexus 7 2013
  • Play Store ID:
    Michele Marconi
  • Sistema operativo:
    Surface 2 pro win 8.1
Problema ricerca in una listView
« il: 27 Agosto 2013, 23:25:34 CEST »
0
Salve, vorrei ricercare una parola inserita da tastiera in una editText all'interno di una listview. Come da immagine.

Ho inserito un controllo sulla editText trovato su internet, ovvero questo pezzo di codice:

Codice: [Seleziona]
EditText filterText = (EditText) findViewById(R.id.editTextRicerca);
            filterText.addTextChangedListener(new TextWatcher() {
               
                public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
                    // When user changed the Text
                    ContenitoreTab.this.arrayAdapter.getFilter().filter(cs);   
                }
                 
                public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
                        int arg3) {
                    // TODO Auto-generated method stub
                     
                }
                 
                public void afterTextChanged(Editable arg0) {
                    // TODO Auto-generated method stub                         
                }
            });

Il problema sta nel fatto che funziona, ma quando digito qualcosa che è presente nell'arrayAdapter, la listview si aggiorna ma non presenta nessun valore!

Probabilmente perche ho letto su internet che dovrei sovrascrivere il metodo getFilter() poichè il mio arrayAdapter  è definito così:

Codice: [Seleziona]
ArrayAdapter<Persona> arrayAdapter;  // non è un adapter di Stringhe, ma della classe Persona

Detto ciò non capisco come muovermi, potete aiutarmi? grazie

Offline elfo83

  • Utente normale
  • ***
  • Post: 287
  • Respect: +23
    • Mostra profilo
  • Sistema operativo:
    Mac OS 10.8.2
Re:Problema ricerca in una listView
« Risposta #1 il: 28 Agosto 2013, 16:34:33 CEST »
0
Ciao, non ho capito se vuoi filtrare la lista mano a mano che inserisci delle lettere o se vuoi inserire una parola, premere il tasto cerca e ottenere i risultati. A seconda di quello che vuoi fare posso suggerirti la soluzione.

Offline Vincenzoz

  • Utente junior
  • **
  • Post: 122
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    Vincenzo Cimino
  • Sistema operativo:
    Windows 7
Re:Problema ricerca in una listView
« Risposta #2 il: 29 Agosto 2013, 12:50:52 CEST »
0
Vincenzo Cimino @ Google Play Store