Android AutoCompleteTextView белый на белом Раскрывающийся список - PullRequest
21 голосов
/ 19 апреля 2011

ломая голову здесь, я довольно долго искал в Интернете, и похоже, что это была ошибка на Android раньше, но пока не нашел решения.

У меня есть AutoCompleteTextView:

autodesignations = (AutoCompleteTextView) findViewById(R.id.main_autocomp);

adapterShapesAuto = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, shapes);

autodesignations.setAdapter(adapterShapes);

виджет работает, но выпадающий текст всегда белый текст на белом фоне.

Я попытался настроить ресурс для адаптера на несколько комбинаций встроенных макетов Android, а также мою собственную.

Даже указывая его на ресурс TextView, который также используется для Spinner (который работает как положено, черный текст на белом фоне), но не нашел способа сделать эту работу, продолжайте получать те же результаты

Любая помощь?

Ответы [ 5 ]

21 голосов
/ 30 мая 2012

У меня была эта проблема.Исправлено с помощью android.R.layout.select_dialog_item для макета.

3 голосов
/ 19 декабря 2014

Итак, вот ответ на мой вопрос.

Как часто this и контекстная ссылка не совсем совпадают.Возможно, потому что контекстная ссылка может быть передана через некоторые действия, что угодно.

Таким образом, я изменил ту строку (которая включена в onClickListener), где 'context' извлекается во время onCreate () с помощью getApplicationContext();

adapterListModele = new ArrayAdapter<String>(context, android.R.layout.select_dialog_item, listModeleNom);

, в следующую строку, где я использовалэто из моего класса:

adapterListModele = new ArrayAdapter<String>(AncestorVehicule.this, android.R.layout.select_dialog_item, listModeleNom);

И это работает!Нет больше белого шрифта.

Я протестировал его вне функции обратного вызова onclicklistener и заметил 2 вещи:

  • , используя ту же переменную context, заставил выпадающий список отображаться белым
  • придерживаясь«это» позволяет избежать проблемы.

Надеюсь, это поможет кому-то еще.

1 голос
/ 14 февраля 2015

Я пытался настроить тему до setcontext, пробовал другой параметр ресурсов в arrayAdapter и пробовал другую тему, но ничего не помогло.

Затем я изменил контекст с 'this' на 'getApplicationContext', но проблема былаpersistent.

Наконец я изменил параметр контекста на "getBaseContext ()", и проблема была решена.

1 голос
/ 19 апреля 2011

Очень странно ... У меня есть AutoCompleteTextView, которые работают очень хорошо.Я обнаружил, что размер выпадающих записей был слишком велик, поэтому я настроил свой собственный файл макета ресурса.Глупый вопрос ... Вы установили textColor в своем xml?

Вот один из них, который я использую ...

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1"
    android:singleLine="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:padding="6dp"
    android:textColor="#000000"
    android:ellipsize="marquee" />

Возможно, у вас есть тема какого-либо типа?1007 * Также ... возможно, текст не белый, но вместо этого у вас случайно есть пустые строки?

0 голосов
/ 06 июля 2015

Вот ваш ответ

 SimpleCursorAdapter ad = new SimpleCursorAdapter(this, android.R.layout.simple_dropdown_item_1line, null,
                new String[] { "item_Name" }, new int[] {android.R.id.text1} , 2 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...