Когда я использую autocompletetextview, все работает отлично, за исключением того, что он продолжает переключаться между двумя позициями: правильный справа под текстом и несколько способов ниже. Он начинает ошибаться, но почти сразу переходит в правильное положение. Однако это очень раздражает при наборе текста или в обратном порядке, как это происходит для каждой буквы. Я использую андроид-студию.
Кажется, что два события одновременно пытаются решить макет. Иногда он будет придерживаться одного или другого положения.
** Я замедлял процесс фильтрации с помощью настраиваемого адаптера, и, похоже, при вводе текста он перемещается в неправильное положение, а затем, когда фильтрация завершена, он возвращается в правильное положение.
Некорректное
Правильно:
java (в OnCreate()) -
String[] drugs = new String[]{"Nexium","Amoxicillin","LEVOCETIRIZINE DIHYDROCHLORIDE", "Advil", "Advair Diskus", "Daraprim"};
AutoCompleteTextView drugNameAutoComplete = ((AutoCompleteTextView) findViewById(R.id.drugNameEditText));
drugNameAutoComplete.setAnimation(null);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,drugs);
drugNameAutoComplete.setAdapter(adapter);
И код макета -
<AutoCompleteTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/drugNameEditText"
android:enabled="true"
android:singleLine="true"
android:layout_below="@+id/lookingForView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:dropDownVerticalOffset="50dp"
android:hint="@string/drug_name" />
Если я удалю dropDownVeticOffset, я получаю мерцание между правильным значением и этим -