2016-08-15 5 views
0

Ich bin Neuling in Java und ich habe ein Problem mit meinem Code ..Listview-Filterung mit einfachen Adapter

ListAdapter adapter = new SimpleAdapter(Activity_ListView.this, list, R.layout.list_item, 
      new String[]{Config.TAG_NOMOR_INVENTARIS,Config.TAG_JENIS_BARANG,Config.TAG_NAMA_BARANG, 
        Config.TAG_MERK,Config.TAG_TAHUN,Config.TAG_NAMA_PENGGUNA}, 
      new int[]{R.id.nomorinventaris, R.id.jenisbarang,R.id.namabarang, R.id.merkbarang, R.id.tahunbarang, R.id.namapengguna}); 
    listView.setAdapter(adapter); 

    /** 
    * Enabling Search Filter 
    * */ 
    inputSearch.addTextChangedListener(new TextWatcher() { 

     @Override 
     public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) { 
      // When user changed the Text 
      Activity_ListView.this.adapter.getFilter().filter(cs); 
     } 

     @Override 
     public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, 
             int arg3) { 
      // TODO Auto-generated method stub 

     } 

     @Override 
     public void afterTextChanged(Editable arg0) { 
      // TODO Auto-generated method stub 
     } 
    }); 

Das Problem ist .., ich mag den Adapter verwenden (auf einfachen Adapter) an onTextChanged Methode .. aber der Adapter auf dieser Methode (onTextChanged) immer noch rot und es hieß immer "kann nicht lösen Symbol" Adapter ""

Sorry für mein schlechtes Englisch ... Ich wäre sehr dankbar, wenn jemand will um mir zu helfen ..

Antwort

0

Sie haben bereits den ListAdapter-Adapter definiert und initialisiert ". Sie können verwenden

adapter.getFilter().filter(cs); 
//no need to use Activity_ListView.this.adapter.getFilter().filter(cs); 

Um Filter zu verwenden, müssen Sie benutzerdefinierte Adapterklasse erstellen und filterbar implementiert. Ref: Instant search with filter class