Android Cambiar el color de texto de Spinner (texto mostrado – no elementos en el hilandero)

Excepto en una pantalla, el Spinner necesita tener texto 'negro'. La pantalla requiere que Spinner tenga el color "blanco" (tanto el texto mostrado para el elemento seleccionado como los elementos giratorios).

Aquí está la imagen para una mejor claridad. la imagen superior es cómo aparece en color negro y la parte inferior es la imagen de los elementos del hilandero con el color de texto blanco

Puedo conseguir el color "blanco" para los artículos del hilandero pero no el texto exhibido seleccionado. Una vez más, no quiero cambiar globalmente el estilo – sólo esta pantalla. es posible?

 public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { int index = adapterView.getSelectedItemPosition(); ((TextView) spinner.getSelectedView()).setTextColor(getResources().getColor(R.color.white)); } 

Cuando usted crea Spinner usted tiene que proporcionarle el adaptador. Si estaba utilizando la implementación estándar de los desarrolladores de Android:

  Spinner spinner = (Spinner) findViewById(R.id.spinner); // Create an ArrayAdapter using the string array and a default spinner layout ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.planets_array, android.R.layout.simple_spinner_item); 

Que lo que puede hacer es crear su propio diseño que para representar el texto del elemento seleccionado que se proporciona como y ponerlo en el adaptador y allí se puede proporcionar el atributo 'textColor', algo así:

 <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/text1" style="?android:attr/spinnerItemStyle" android:singleLine="true" android:textColor="@color/primary_blue" android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:textAlignment="inherit"/> 

Si utiliza ArrayAdapter.createFromResource() no olvide tener TextView con android:id="@android:id/text1" para que este adaptador pueda enlazar datos a su diseño.

  • Cambiar Spinner dropdown icon
  • Cómo ordenar HashMap como agregado en Android con ArrayAdapter
  • Error en Spinner en una ventana emergente, se bloquea cuando se hace clic
  • Cómo cambiar android spinner popupBackground
  • ¿Cómo puedo añadir mi spinner a la ActionBar?
  • Vista de datos de Android Spinner que no se actualiza en el elemento re-seleccionado
  • Cómo mantener onItemSelected de disparar en un Spinner recién instanciado?
  • ¿Cómo quitar la línea del separador en el hilandero?
  • ¿Cómo hago para que el estado "deshabilitado" de un Spinner esté deshabilitado?
  • ¿Cómo establecer el valor predeterminado en el menú desplegable de hilandero en Android?
  • Altura del menú desplegable de Spinner para coincidir con el padre
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.