AutoCompleteTextView
использует этот класс для обнаружения кликов в его раскрывающемся списке:
private class DropDownItemClickListener implements AdapterView.OnItemClickListener {
public void onItemClick(AdapterView parent, View v, int position, long id) {
performCompletion(v, position, id);
}
}
Внутри этого метода performCompletion()
есть этот вызов, чтобы фактически изменить содержимое TextView:
replaceText(convertSelectionToString(selectedItem));
Этот replaceText()
метод имеет значение protected
, что означает, что вы можете создать подкласс AutoCompleteTextView
и переопределить его, чтобы ничего не делать:
public class MyAutoCompleteTextView extends AppCompatAutoCompleteTextView {
public MyAutoCompleteTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void replaceText(CharSequence text) {
// do nothing
}
}
Теперь просто замените теги <AutoCompleteTextView>
на<com.example.yourprojecthere.MyAutoCompleteTextView>
тегов, и вы должны быть все в порядке.