Android 기록

검색기능 관련 - addTextChangeListener with EditText

FireStone 2019. 11. 14. 19:39

EditText에서 텍스트를 받아와서 검색하는 기능을 만들고자 함

 

addTextChangeListener는 EditText에 추가적인 글자 변화가 있는지 항상 듣고 있는 리스너입니다. 

TextWatcher는 인터페이스로써 3단계(글자변화 전, 중, 후)로 구성된 글자 변화의 시점의 메서드를 갖고있습니다.

 

beforeTextChanged ->글자가 변화되기 전

onTextChanged -> 글자 변화되는 중

afterTextChanged -> 글자 변화된 후 

 

onTextChanged는 검색어를 작성하는 동안 게시글을 잠시 안보이게 한다던가 -  clear기능 사용

afterTextChanged가 필터링 검색할때 좋음

 public void afterTextChanged(Editable edit) {
                String filterText=edit.toString();
                //검색어칠때 팝업뜸
                /*if(filterText.length()>0){
                    listview.setFilterText(filterText);
                }
                else{
                    listview.clearTextFilter();
                }*/
                //팝업 안뜨게하려면
                ((ArrayAdapter<String>)listview.getAdapter()).getFilter().filter(filterText);

            }

-참고로 주석에 관한건 안드에서는 필터링 기능을 사용하면 editText에 작성중인 글씨가 팝업으로 개크게 뜬다

그래서 그 팝업을 없애주고자 저런식으로 바꿔씀

//rice_battery 관련

'Android 기록' 카테고리의 다른 글

kotlin -Edittext로 검색바 만들기 -filtering 기능  (0) 2019.11.20