EditText配合listview實現過濾

2021-07-08 21:56:12 字數 1602 閱讀 3643

今天記個筆記 使用edittext和listview來實現過濾效果

主要涉及知識

1.普通listview+adapter 的使用方法

2.adapter實現filterable介面,adapter同時包含一繼承自filter的內部類用於實現過濾規則的定義

3.edittext的監聽,包括文字變化和退格鍵的監聽

第一步:建立乙個adapter,繼承baseadapter實現filterable介面,主要是實現裡面 getfilter()方法;

第二步:準備一些資料,自己定義乙個實體類,實現這個listview的列表;

第三部:在adapter中建立乙個繼承自filter的內部類,主要裡面有兩個方法filterresults performfiltering(charsequence prefix),和 publishresults(charsequence constraint,filterresults results)。具體實現如下:

protected filterresults performfiltering(charsequence prefix)

}if(prefix==null||prefix.length()==0)

} else else

if(value.indexof(prefixstring)!=-1)

if(maxmatch>0) }}

listlist = set2list(newvalues);// 轉成list

results.values = list;

results.count = list.size();

}return results;

beanlist = (list)results.values;

if(results.count>0) else

第四步:實現監聽

使用addtextchangedlistener(),

public void ontextchanged(charsequence arg0, int arg1, int arg2, int arg3)

在setonkeylistener()實現退格監聽

public boolean onkey(view arg0, int arg1, keyevent arg2)

return false;

updatelist(list)主要作用是更新list

public void updatelist(listlist)

Edittext與seekbar的配合應用

一 本人這裡寫了乙個小小的遊戲外掛程式,主要實現的功能是 seekbar滾動條的提示,以及textview顯示進度條的值和edittext調節進度條的值,再就是記錄訊息的提示。1 這裡是.xml檔案的 override public void onstarttrackingtouch seekbar...

南京學思XSuperNEST中ListView優化

xsupernest用listview把資料展示給使用者,為了更好的增強使用者體驗,我們要對其進行進一步的優化。1 首先,雖然大家都知道,還是提一下,利用好 convertview 來重用 view,切忌每次 getview 都新建。listview 的核心原理就是重用 view。listview ...

EditText 屬性盤點

edittext 屬性 盤點 1 android hint 請輸入資訊 屬性 在edittext沒有輸入內容時,預設顯示的文字.2 android numeric 屬性 設定文字可輸入的型別 1 integer 只能輸入整型 2 decimal 輸入小數 3 android singleline 屬...