EditText を使用して、別のリストビューで検索機能を実行する必要があります。私は edittext.addTextChangedListener() メソッドを使用し、解決策を得ました。しかし、EditText ボックスは 1 文字しか受け付けません。2 番目の文字を入力しようとすると、強制的に閉じられます。
次のコードを使用しました。
edtSearch.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
// Abstract Method of TextWatcher Interface.
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// Abstract Method of TextWatcher Interface.
}
public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
sAdapter.clear();
textlength = edtSearch.getText().length(); //getting text from EditText
Log.e("textlength",""+textlength);
array_name.clear(); array_friendid.clear(); array_status.clear(); array_image.clear();array_thumb.clear();
for (int i = 0; i < fullname.length; i++) {
if (textlength <= fullname[i].length()) {
if(edtSearch.getText().toString().equalsIgnoreCase((String)fullname[i].subSequence(0,textlength))) {
Log.e("arrayname",fullname[i]);
array_name.add(fullname[i]);
array_friendid.add(friendid[i]);
array_status.add(status[i]);
array_image.add(imageurl[i]);
array_thumb.add(thumbnailurl[i]);
array_header.add(fullname[i].substring(0, 1));
}
}
}