android - imprimir - letras blancas con fondo negro
El texto en el hilandero es blanco sobre un fondo blanco (6)
Puede fácilmente estilo el Spinner. Usa esto en style.xml
:
<style name="SpinnerThemeLight" >
<item name="android:colorBackground">@color/black</item>
<item name="android:textColorPrimary">@color/black</item>
<item name="android:textColorSecondary">@color/black</item>
<item name="android:textColorTertiary">@color/black</item>
<item name="android:textColorPrimaryDisableOnly">@color/black</item>
</style>
En el archivo xml
anterior, simplemente le he dado black
color black
por causa del tiempo. Solo juega con él y ordena tu color preferido.
Defina el Spinner
en el activity.xml
siguiente manera:
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:entries="@array/countrys"
android:spinnerMode="dropdown"
android:theme="@style/SpinnerThemeLight"/>
El texto de mis giradores es blanco, y no tengo idea de por qué.
Este es mi xml, nada especial.
<Spinner
android:id="@+id/spinner_date"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
Y mi codigo
dateSpinner = (Spinner) findViewById(R.id.spinner_date);
selectedDate = calendar.getTime();
List<String> list = new ArrayList<String>();
list.add(formatter.format(selectedDate));
dateAdapter = new ArrayAdapter<String>(mContext,
android.R.layout.simple_spinner_item, list);
dateSpinner.setAdapter(dateAdapter);
¿Cuál podría ser la razón por la que mi texto se muestra en blanco?
EDITAR: He encontrado el motivo, reemplacé el parámetro mContext que estaba configurado en mi onCreate.
mContext = getApplicationContext();
Ahora uso d
ateAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
y funciona.
Resolví este problema usando
getBaseContext()
en lugar de
getApplicationContext()
Tal vez tenga un android:textColor="@android:color/white"
en su simple_spinner_item.xml en la carpeta de diseño de su proyecto.
Es mejor utilizar un diseño de elemento de giro personalizado con un buen android:textColor="@android:color/COLOR_YOU_WANT_TO_USE"
.
También tuve el mismo problema que era debido a mi tema de aplicación. Que resolví reemplazando el
android.R.layout.simple_spinner_item
con
android.R.layout.simple_list_item_1
en mi ArrayAdapter
. Espero que esto pueda resolver tu problema
Tengo el mismo problema y he encontrado la respuesta. No utiliza el contexto de la aplicación, en su lugar, simplemente use getActivity()
(si está en el fragmento) o esto (si está en actividad), funcionará
dateAdapter = new ArrayAdapter<String>(**this**,
android.R.layout.simple_spinner_item, list);
lo cambio de
new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_item, some_list);
al nuevo ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
está arreglado, aunque no quiero usar "esto"