Autore Topic: Filtro in un Listview  (Letto 459 volte)

Offline ClaudGin

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    XPERIA Z
  • Sistema operativo:
    windows
Filtro in un Listview
« il: 25 Gennaio 2014, 13:03:34 CET »
+1
Ciao a tutti
Grazie in anticipo per la vostra attenzione
Ho un problema di filtraggio con un Textedit in un controllo ListView.
La cosa per me è complicata.
la  MAinActivity raccoglie dati utilizzando Json (PHP Web)
Vi metto a continuazione  il codice in java  che raccoglie i dati:

Codice (Java): [Seleziona]
protected void onPostExecute(String response) {
                                pDialog.dismiss();
                                //resultado = response;
                                final ListView ListaPartner = (ListView) findViewById(android.R.id.list);
                                // enables filtering for the contents of the given ListView
                                editsearch = (EditText) findViewById(R.id.textEditPartner);            

                                final ArrayList<CursorPartner> ContenidoPartner = new ArrayList<CursorPartner>();
                                ListaPartner.setAdapter(new AdapterPartner(Partner.this,ContenidoPartner));
                                 // This statement enables text filtering in the listview
                                //ListaPartner.setTextFilterEnabled(true);
                               
               



                                try {
                                        // Parseamos la respuesta obtenida del servidor a un objeto JSON
                                        // Creamos el objeto AdaptePatnerr y lo asignamos al ListView
                                        JSONObject jsonObject = new JSONObject(response);
                                        JSONArray PatnerArray = jsonObject.getJSONArray("PatnerWeb");
                                        Log.i("Resultado :","-"+ PatnerArray.toString());
                                        for (int i = 0; i < PatnerArray.length(); i++) {

                                                JSONObject datos =PatnerArray.getJSONObject(i);

                                                // Creamos el objeto City
                                                CursorPartner c = new CursorPartner(datos.getInt("id"),
                                                                datos.getString("locale"),
                                                                datos.getString("direccion"),
                                                                datos.getString("localidad"),
                                                                datos.getString("provincia"),
                                                                datos.getString("cp"),
                                                                datos.getString("telefono"),
                                                                datos.getString("horarios"));
                                                        c.setDataPartner(datos.getString("image"));
                                    ContenidoPartner.add(c);
                                   
                                    editsearch.addTextChangedListener(new TextWatcher() {
                                        @Override
                                        public void afterTextChanged(Editable arg0) {
                                        // TODO Auto-generated method stub
                                        //String text = editsearch.getText().toString().toLowerCase(Locale.getDefault());
                                    //  ListaPartner.filter(text);
                                        }
                                        @Override
                                        public void beforeTextChanged(CharSequence arg0, int arg1,
                                        int arg2, int arg3) {
                                        // TODO Auto-generated method stub
                                        }
                                        @Override
                                        public void onTextChanged(CharSequence arg0, int arg1, int arg2,
                                        int arg3) {
                                        // TODO Auto-generated method stub
                                        }
                                        });

                         } // End for Loop
                                     
                                } catch (JSONException e) {

                                        Log.e("JSONException", "Error: " + e.toString());

                                } // catch (JSONException e)
Il controllo Listview funziona perfettamente
l'unica cosa che  il filtro non so dove comnciare

Qualcuno può darmi una mano o con un esempio di un controllo listview che utilizza Mysql e come filtrare il risultato.


Grazie
Un saluto