ArrayList<String>를 사용해서 리스트를 뿌려주는것을 만들었는데요

remove 로 지운다음에

다시 add해서 자료를 지웠다가 넣었다가 하고 있습니다.


notifyDataSetChanged로 리스트에서 검색기능을 넣어서 쓰고 있는데

한글자 입력할때마다 재 검색을 하는데 좀 느립니다...

더 빠르게 할순 없을까요???


밑에 소스처럼 사용하고 있습니다. 

참고로 리스트에 400개정도가 들어가 있습니다.


if(listcount>0){

for(int i = 0;i<title.length; i++){

listString.remove(page[i]);

listString2.remove(title[i]);

listString3.remove(words[i].replace(":","\n"));

listString4.remove(index[i]);

}

for(int i = 0;i<title.length; i++){

if(SoundSearcher.matchString(page[i],edittext.getText().toString())&&botton_tab==1)

listString(i);

else if(SoundSearcher.matchString(title[i],edittext.getText().toString())&&botton_tab==2)

listString(i);

else if(SoundSearcher.matchString(words[i],edittext.getText().toString())&&botton_tab==3)

listString(i);

}

}

musicList.notifyDataSetChanged();

mListView.setSelection(0);


private void listString(int i){

listString.add(page[i]);

listString2.add(title[i]);

listString3.add(words[i].replace(":","\n"));

listString4.add(index[i]);

}