WedX - журнал о программировании и компьютерных науках

Цвет AutoCompleteTextview установлен белый по умолчанию

Я использовал AutoCompleteTextView в своем приложении для Android, и он работает правильно. Единственная проблема, с которой я столкнулся, заключается в том, что цвет предложений по умолчанию белый, то есть я не вижу никаких предложений. Поэтому, когда я начинаю что-то вводить, список расширяется белыми записями (невидимыми), но когда я нажимаю на любой элемент, я обнаруживаю, что он работает так, как должен быть. Проблема только в цвете. Я использую следующий код.

<AutoCompleteTextView android:id="@+id/location"  android:textColor="#000000"
            android:layout_width="fill_parent" android:layout_height="wrap_content"></AutoCompleteTextView>

а также

 ArrayAdapter<String> autoadapter=new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,cities);
            city = (AutoCompleteTextView) findViewById(R.id.location);
            city.setAdapter(autoadapter);
            city.setThreshold(1);
            city.setTextColor(Color.BLACK);

Кто-нибудь может сказать мне, в чем проблема??
- Заранее спасибо


  • Я решил ту же проблему, следуя этому парню: stackoverflow.com/a/11787982/1265456 21.01.2014
  • Это может быть не ошибка. См. также этот ответ и мой комментарий под ним. 18.12.2014
  • Ознакомьтесь с моим новым ответом, который поддерживает версии lollipop 20.04.2015

Ответы:


1

Это зарегистрированная ошибка,

Вы можете найти несколько способов исправить это по той же ссылке.

Ошибка автоматического завершения просмотра текста

Решение ошибки

Примечание. Это решение не работает с lollipop.

Я надеюсь, что это помогает...

12.12.2011
  • Этот ответ не поможет, если эти ссылки сломаются. Стоит обновить ответ, включив в него сведения о связанном решении. 18.03.2014

  • 2

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

    Затем я изменил контекст с «это» на «getApplicationContext», но проблема осталась.

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

    14.02.2015
  • Это неправильный ответ. getBaseContext() может вызвать утечку памяти, а getApplicationContext() БУДЕТ вызвать утечку. 05.01.2017

  • 3

    Для Lollipop все обходные решения приведены в отчете ошибка не будет работать.

    Наконец-то я нашел решение, которое работает с lollipop и предыдущими версиями ОС, используя вместо этого android.R.layout.simple_spinner_dropdown_item с adapter следующим образом:

    ArrayAdapter<String> adapter = new ArrayAdapter<>(getContext(), android.R.layout.simple_spinner_dropdown_item, suggestionList);
    

    Это решит проблему с белым текстом без необходимости изменять атрибуты темы или что-то еще.

    20.04.2015
  • @Amaresh Я попробовал это сам .. убедитесь, что вы правильно используете предыдущий фрагмент .. и если у вас все еще есть проблема с ним, поделитесь своим кодом, чтобы мы могли попытаться решить проблему вместе :) 21.09.2015

  • 4

    Вы можете использовать simple_list_item_1 в ArrayAdapter,

    ArrayAdapter<String> autoadapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,cities);
                city = (AutoCompleteTextView) findViewById(R.id.location);
    

    Другое решение - выйти из стиля в AndroidManifest.xml

    ПРИМЕЧАНИЕ. Это решение не работает с lollipop версиями ОС.

    22.01.2013

    5

    Ну, мы не можем установить цвет «текста предложения», но мы можем изменить его фон! Просто используйте android:popupBackground="YOUR_COLOR_HEX" как в этом примере:

    <AutoCompleteTextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/autocompletetextview"
            android:layout_gravity="center_horizontal"
            android:hint=" ... "
            android:popupBackground="#000000"/>
    

    Работает также на Lollipop! ;)

    23.06.2015

    6

    Вы должны использовать

    setTheme(android.R.style.Theme); до setContentView

    Это сработало для меня :)

    12.08.2013

    7

    Установить цвет фона всплывающего окна какcity.setDropDownBackgroundResource(R.color.indicator);

    23.09.2015

    8

    если у кого такая же проблема

    Это сработало для меня

    autocompleteF.setBackgroundColor(color.black);
    
    01.06.2016

    9

    Добавьте это в свою тему:

    <item name="android:autoCompleteTextViewStyle">@style/Widget.AppCompat.AutoCompleteTextView</item>
    
    05.07.2016

    10

    Это сработало для меня Сначала используйте это до setContentView()

    setTheme(android.R.style.TextAppearance_DeviceDefault_Medium_Inverse);
    

    вам нужно изменить некоторые цвета в colors.xml в папке значений

    09.02.2017
    Новые материалы

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

    Лицензии с открытым исходным кодом: руководство для разработчиков и создателей
    В динамичном мире разработки программного обеспечения открытый исходный код стал мощной парадигмой, способствующей сотрудничеству, инновациям и прогрессу, движимому сообществом. В основе..

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..


    Для любых предложений по сайту: [email protected]