4

AutocompleteTextView の候補リストに一致するアイテムがない場合にメッセージが必要です。addOnTextChangeListenerを使用すると、ユーザーが文字を入力するたびにメッセージが表示されますが、一致が見つからない場合にのみ表示されます。これを行う方法を教えてください。リストはWebサービスから来ています。ありがとうございます。

searchEdit = (AutoCompleteTextView)findViewById(R.id.searchEdit);
    searchEdit.setCursorVisible(false);
    ArrayAdapter<String> adapter =  new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, menuItems);
    searchEdit.setAdapter(adapter);
    searchEdit.addTextChangedListener(this);
@Override
public void afterTextChanged(Editable arg0) {

}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
        int after) {

}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
    if (!searchEdit.isPerformingCompletion()) {
        Toast.makeText(getApplicationContext(), "No Item Found", 2000).show();
        return;
    }
}
4

4 に答える 4

0

これを試してください:トーストを afterTextChanged() 関数に入れます

  searchEdit = (AutoCompleteTextView)findViewById(R.id.searchEdit);
searchEdit.setCursorVisible(false);
ArrayAdapter<String> adapter =  new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, menuItems);
searchEdit.setAdapter(adapter);
searchEdit.addTextChangedListener(this);

 @Override
 public void afterTextChanged(Editable arg0) {
  if (!searchEdit.isPerformingCompletion()) {
    Toast.makeText(getApplicationContext(), "No Item Found", 2000).show();
    return;
}
}
 @Override
 public void beforeTextChanged(CharSequence s, int start, int count,
    int after) {

 }
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {

}
于 2013-02-02T11:35:18.370 に答える