私は電話の連絡先をリストにロードし、以下のようにedittextにTextChangedListenerを実装しています
editTxt.addTextChangedListener(new TextWatcher() {
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void afterTextChanged(Editable s) {
final TextView noDataFound = (TextView) findViewById(R.id.norecords);
inputName = s.toString();
if(inputName!=null&&!inputName.trim().equals("")){
Log.d(TAG, "LoadMoreEntries --> Constants.loadEntries : "
+ Constants.loadEntries);
if (Constants.loadEntries != null) {
Constants.loadEntries.cancel(true);
}
Constants.loadEntries = new LoadEntries();
Constants.loadEntries.execute();
}
Button closesearch = (Button) findViewById(R.id.closesearch);
if (inputName != null && !inputName.trim().equals("")) {
closesearch.setVisibility(View.VISIBLE);
} else {
closesearch.setVisibility(View.GONE);
}
closesearch.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (Constants.loadEntries != null) {
Constants.loadEntries.cancel(true);
Constants.loadEntries = new LoadEntries();
Constants.loadEntries.execute();
}else {
}
return false;
}
});
}
public void onTextChanged(CharSequence s, int start, int before,
int count) {
}
});
ここでは、ユーザーが正しい名前を入力すると名前が付けられ、間違った名前を入力するとデータが表示されません。私の問題は、正しい名前を入力して消去するとリスト全体が読み込まれるのですが、間違った名前を入力してデータが表示されず、名前を消去するとリストが更新されないということです。また、名前を入力して「x」ボタンをクリックすると、すべてのリストが元に戻ります。どんな助けでも大歓迎です