Как поменять цвет текста в выпадающем списке Spinner

Aleksey Timoshchenko

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

Но, когда я использую ту же имплементацию, но в кастомном Dialog, то выпадающий список выглядит вот так:

Я так понимаю, что, когда я открываю Spinner в Dialog, то он в выпадающем списке берет стиль Dialog

Как сделать так, чтобы текст в выпадающем списке на втором изображении был таким же, как и на первом?

private void setManagerListSpinnerAdapter() {
    ArrayAdapter<manageritem> adapter =
            new ArrayAdapter<>(ElectraHeverApplication.getInstance(),
                    R.layout.custom_spinner_view, android.R.id.text1, managerList);

    adapter.setDropDownViewResource(R.layout.custom_drop_down);

    spManagerList.setAdapter(adapter);
}
</manageritem>

XML R.layout.custom_spinner_view

XML R.layout.custom_drop_down

Стиль @style/spinnerDropDownItemStyle

Такая имплементация с этими файлами работает у меня в активити и все хорошо, но эта же имплементация в Dialog уже выглядит иначе...

Если что-то забыл, то спрашивайте.

2 ответа

Aleksey Timoshchenko

При создании адаптера передавайте эту, свою разметку. Также попробуйте поставить черный текст.


Aleksey Timoshchenko

В итоге я нашел в чем было дело

После того как был создан ArrayAdapter в него нужно установить dropDownView вот так

adapter.setDropDownViewResource(R.layout.custom_drop_down);

и в разметке этого custom_drop_down было вот так

а нужно было вот так

разница в строке style

licensed under cc by-sa 3.0 with attribution.