的我這一段代碼:setVisibility列表<item>
public void cap_search(){
EditText search = (EditText) findViewById(R.id.search);
String str_search = null;
adapter = new ItemListAdapter(this, data);
setListAdapter(adapter);
str_search = search.getText().toString();
for (int i = data.size()-1; i >= 0; i--){
if (!data.get(i).getCaption().contains(str_search)){
data.remove(i);
}
}
}
我會解釋這個代碼,它在我的代碼是什麼:
人們能看到蓋的清單,就可以檢查他們擁有的所有大寫字母。 但是因爲我有很多上限,我建立了一個搜索功能。所以當他們鍵入:「A」時,那麼列表應該只顯示包含「A」的上限。 直到這一切正常,現在是問題。 他們鍵入:「A」後,我刪除所有不包含它的項目。但是當用戶刪除「A」並輸入「B」時,它應該檢查整個列表(也是刪除的不是以「A」開頭的列表),但它不會,因爲我刪除了它們。
那麼是否有可能使項目不可見而不是刪除它們? 或者也許另一種方法來解決這個問題?
我希望很清楚,如果不是請說出來,那麼我會試着解釋它的不同。
感謝不已,Bigflow
編輯1:
試了很多的答案,但我不能讓它正常工作。 有人有更多的想法?
TextWatcher看起來很酷,但對我來說太困難了,這是我嘗試實現它的第二個項目,但是這次我無法實現它。
我從來沒有使用過SQL。
那麼別人有其他答案嗎?或者,也許有人用textwatcher很好,你可以讓我/幫助我嗎?大多數時候,互聯網上的textwatchers例子對我來說太複雜了。我真的很感激。
編輯2:
我還在盤算這個選項/功能了,但如何與adapter.getfilter();
的使用?
如果您知道任何SQL,您可以使用[FilterQueryProvider](http://developer.android.com/reference/android/widget/FilterQueryProvider.html)自動執行所有操作。 – Sam
@Sam對不起,我沒有 – Bigflow