Intereting Posts
Список элементов с чередующимися цветами Как получить объявление в нижней части экрана без перекрытия Как лучше организовать мой класс базы данных SQLite в Android Получить сгенерированный идентификатор после вставки Пример: двунаправленный сетевой разъем Android с использованием AsyncTask Зачем начинать исключать ресурсы моего собственного приложения, когда это было не нужно раньше? Android HttpClient отправляет запрос на хост-компьютер через USB Последние службы Google Play 9.6.80 вызывают "FirebaseCrash: не удалось инициализировать отчеты о сбоях" Могу ли я использовать eventBus greenrobot для связи между Activity и Service? Ошибка: ваш проект содержит файлы C ++, но он не использует поддерживаемую встроенную систему сборки Содержимое EditText внутри ExpandableListView исчезает при нажатии следующего заголовка ExpandableListView Как получить адрес электронной почты с адресом первичной покупки Синхронизация декодированных аудио и видео данных от Mediacodec Java.lang.IllegalStateException: Не удалось прочитать строку 0, col 0 из CursorWindow Автоматическая всплывающая клавиатура при запуске

Android AutoCompleteTextView onItemSelectedListener не запускается с помощью клавиатуры bluetooth

У меня есть простое приложение, которое содержит только AutoCompleteTextView (код ниже). У меня установлен OnItemClickListener и OnItemSelectedListener . Нажатие на отдельные элементы из раскрывающихся onItemClick вызывает событие onItemClick . Однако при использовании клавиатуры Bluetooth, используя клавиши со стрелками для перехода к определенному элементу, похоже, не onItemSelected событие onItemSelected (журналы не отображаются для этого события).

Что вызывает это событие onItemSelected ? У меня создалось впечатление, что highlight на одном из выпадающих элементов делает это, но это, похоже, не так.

Если OnItemSelectedListener не является правильным прослушивателем событий для выделенного элемента, есть ли что-либо, удовлетворяющее этому требованию?

activity_main.xml

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent"> <AutoCompleteTextView android:id="@+id/autoCompleteTextView" android:layout_width="match_parent" android:layout_height="wrap_content" /> </RelativeLayout> 

MainActivity.java

 public class MainActivity extends Activity { String[] options = {"a1", "a2", "a3", "b1", "b2", "b3", "b4", "b5"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // An adapter object ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.select_dialog_item, options); AutoCompleteTextView autoCompleteTextView = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView); autoCompleteTextView.setAdapter(adapter); autoCompleteTextView.setThreshold(1); // Set the listeners autoCompleteTextView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Log.d("OnItemClick", "[AutoCompleteTextView] Item clicked"); } }); autoCompleteTextView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Log.d("onItemSelected", "[AutoCompleteTextView] Item selected"); } @Override public void onNothingSelected(AdapterView<?> parent) { Log.d("onNothingSelected", "[AutoCompleteTextView] Nothing here"); } }); } }