studio reales proyectos programacion introducción incluye guia fuente desarrollo código avanzado aplicaciones android android-actionbar android-5.0-lollipop android-actionbar-compat android-toolbar

reales - Color de la barra de herramientas de soporte de Android Control normal color



manual programacion android (2)

Finalmente, he encontrado una solución sobre cómo cambiar el color de la flecha del Spinner a blanco.

1) En styles.xml , agregue el siguiente estilo:

<style name="ActionBarThemeOverlay" parent=""> <item name="android:textColorPrimary">#ffffff</item> <item name="colorControlNormal">#ffffff</item> <item name="colorControlHighlight">#ff33b5e5</item> </style> <style name="Widget.MyTheme.HeaderBar.Spinner" parent="Widget.AppCompat.Light.Spinner.DropDown.ActionBar"> <item name="android:theme">@style/ActionBarThemeOverlay</item> </style>

2) En el diseño, donde usas el Spinner (en tu caso con la Toolbar ), agrega el estilo a tu spinner:

<Spinner xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/my_spinner" style="@style/Widget.MyTheme.HeaderBar.Spinner" android:layout_width="wrap_content" android:layout_height="wrap_content" />

Me gustaría configurar el color desplegable de mi hilandero en blanco, manteniendo los demás elementos de mi tema como el color predeterminado. Aquí está la situación:

<android.support.v7.widget.Toolbar android:layout_height="@dimen/action_bar_height" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:background="?attr/colorPrimary" app:theme="@style/ToolbarTheme.Base" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> <Spinner android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true"/> </android.support.v7.widget.Toolbar>

Y el estilo es:

<!-- My base app theme --> <style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar"> <item name="colorPrimary">@color/primary</item> <item name="colorPrimaryDark">@color/primary_dark</item> <item name="colorAccent">@color/theme_tint</item> <!-- <item name="colorControlNormal">#FFFFFF</item> --> <item name="android:windowNoTitle">true</item> <item name="windowActionBar">false</item> <item name="android:typeface">sans</item> <item name="android:windowBackground">@color/background_primary</item> </style> <!-- My Toolbar theme --> <style name="ToolbarTheme.Base" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <item name="colorControlNormal">#FFFFFF</item> </style>

Si <item name="colorControlNormal">#FFFFFF</item> que poner <item name="colorControlNormal">#FFFFFF</item> en el tema de la aplicación (comentado anteriormente), el menú desplegable del <item name="colorControlNormal">#FFFFFF</item> giratorio funcionará en blanco PERO la casilla de verificación también se volverá blanca. Entonces, ¿cómo puedo hacer que el hilandero SOLAMENTE se vuelva blanco?


Sólo tropezé con estas preguntas. A pesar de que se me ha preguntado hace algún tiempo, solo quería dejar una respuesta que debería funcionar:

Barra de herramientas * .xml

<android.support.v7.widget.Toolbar <!-- leave the theme stuff out of here --> style="@style/MyToolbarStyle" android:layout_width="match_parent" android:layout_height="wrap_content">

Estilos / Temas

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- your other attributes --> <!-- following is used to tint the checkbox - purple for demo purpose --> <item name="colorControlNormal">#2196F3</item> </style> <style name="MyToolbarStyle"> <item name="android:minHeight">?actionBarSize</item> <item name="android:background">?colorPrimary</item> <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item> <item name="theme">@style/MyToolbarTheme</item> </style> <style name="MyToolbarTheme"> <!-- Used to tint the back arrow, menu and spinner arrow --> <item name="colorControlNormal">#FFF</item> </style>

Resultado

Nota: hice la casilla de verificación púrpura para propósitos de demostración