2011-09-21 22 views
8

Esta es una pregunta bastante específica. Tengo un spinner en una ActionBar que se agrega en el método onCreate(). Pude peinar el texto en blanco, pero no puedo ver el subrayado y el triángulo/flecha en la parte inferior derecha para que aparezca en blanco. Aquí está mi estilo:Android Honeycomb: Cómo diseñar la flecha de esquina derecha en spinner en una Barra de acciones

<item name="android:actionDropDownStyle">@style/customActionBarDropDownStyle</item> 

<style name="customActionBarDropDownStyle" parent="android:style/Widget.Holo.Light.Spinner"> 
    <item name="android:textColor">#FFFFFF</item> 
</style> 

No puedo encontrar un artículo de estilo/propiedad que hace que el blanco y el triángulo subrayado. ¿Existe uno?

Aquí hay un ejemplo. He resaltado en rojo el triángulo y subrayado que quiero hacer blanco.

enter image description here

+0

¿Ha encontrado una solución a esto? –

+0

No, no he encontrado una manera de hacer esto. – CACuzcatlan

Respuesta

7

Una respuesta poco tarde, pero mejor que no :) Debe crear un nuevo parche estirable 9 y configurarlo como un fondo para android: actionDropDownStyle.

aquí es un ejemplo:

<item name="android:actionDropDownStyle">@style/customActionBarDropDownStyle</item> 
    <style name="customActionBarDropDownStyle"parent="android:style/Widget.Holo.Light.Spinner"> 
    <item name="android:background">@drawable/custom_spinner_dropdown</item> 
    </style> 

No es posible definir un color a casi todos los componentes nativos, ya que sus orígenes son (en la mayoría de los casos) PNGs 9-patch.

1

El actionDropDownStyle no se puede utilizar para cambiar el estilo de spinner que ha agregado en la barra de acciones; es para uno de los modos de barra de acciones ActionBar.NAVIGATION_MODE_LIST;

cuanto a su problema, puede definir un selector para su spinner en el archivo de diseño, al igual que este:

enter code here 
<Spinner 
    android:dropDownWidth="200dp" 
    android:background="@drawable/actionbar_spinner" 
    android:id="@+id/action_spinner" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_marginRight="10dp" /> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="false" 
     android:drawable="@drawable/spinner_ab_disabled" /> 
    <item android:state_pressed="true" 
     android:drawable="@drawable/spinner_ab_pressed" /> 
    <item android:state_pressed="false" android:state_focused="true" 
     android:drawable="@drawable/spinner_ab_focused" /> 
    <item android:drawable="@drawable/spinner_ab_default" /> 
</selector> 
0

Prueba esto: android:background="@null"

Cuestiones relacionadas