2012-01-05 77 views
0

我列出了100多個項目,我正在構建多選列表,用戶可以從中選擇儘可能多的項目。 我創建了具有多項選擇選項的列表視圖,但滾動100個項目對於用戶來說過於複雜。使用Android中的搜索框創建多選列表視圖

是否有任何方法可以將搜索框放在列表視圖的頂部,以便在搜索框中鍵入文本時,用戶只會看到相關的項目,並可以做出多項選擇?

回答

2

,有沒有辦法在鍵入搜索框的用戶的文本將只能看到相關項目 ,可以使多選擇選擇出的那把搜索框列表視圖,以便 的頂部?

是的這是可能的,你必須實現文本觀察者類。 在搜索編輯文本中,您必須設置addTextChange Event並在其中傳遞文本觀察器對象。

現在在TextWatcher類的OnTextChanged()中,您必須從數據源獲取相關數據並通過adapter.NotifyDatasetChanged()刷新適配器。

編輯

現在對於Multiple selection List-view您可以創建一個list-row layout其中有一個Checkbox。在你的類創建一個類的Adapter。你可以創建一個Base-Adapter和它的getView()方法膨脹list-row並設置在check-box文本並設置checkboxchecked屬性根據您的選擇

+0

感謝達門德拉的響應, 其實我可以在搜索框中添加到列表查看,但不是爲多選列表視圖.. 會ü請讓我知道如何添加多選項選擇 – 2012-01-05 09:08:34

0

是, 可以使用AutoCompleteTextView或實現EditText的onTextChangeListener在listview.you的頂部可以添加列表視圖的項目到適配器到AutoCompleteTextView。

希望u得到什麼,我說...

+0

嗨理查,是否有可能爲多項選擇項目列表..? – 2012-01-05 09:11:01

+0

是的,http://www.vogella.de/articles/AndroidListView/article.html參考 – Richa 2012-01-05 09:12:48

0

這裏是一些代碼,我試過..它可以幫助

public void afterTextChanged(Editable s) { 
         // TODO Auto-generated method stub 

         len=actv.getText().length(); 

         for(int i=0;i<content.size();i++) 
         { 
          if(len<=content.get(i).length()) 
          { 
           if(actv.getText().toString().trim().equalsIgnoreCase((String) content.get(i).subSequence(0, len))) 
           { 

            arr_sort.add(content.get(i)); 

           } 


          } 

         } 

         adapter=new ArrayAdapter<String>(MyListDemoActivity.this,android.R.layout.simple_list_item_1,arr_sort); 
         setListAdapter(adapter); 
        } 
       }); 
相關問題