Estoy probando las nuevas funciones de Appcompat 21 Material Design. Por lo tanto, he creado una barra de herramientas como esta:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/activity_my_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:theme="@style/ThemeOverlay.AppCompat.ActionBar"/>
y lo incluí en mi archivo de diseño principal.
Luego lo configuré como supportActionBar así:
Toolbar toolBar = (Toolbar)findViewById(R.id.activity_my_toolbar);
setSupportActionBar(toolBar);
Está funcionando, pero de alguna manera no puedo entender cómo personalizar la barra de herramientas. Es gris y el texto es negro. ¿Cómo debo cambiar el fondo y el color del texto?
He seguido estas instrucciones:
http://android-developers.blogspot.de/2014/10/appcompat-v21-material-design-for-pre.html
¿Qué he supervisado para cambiar de color?
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="android:windowActionBar" tools:ignore="NewApi">false</item>
<item name="windowActionBar">false</item>
</style>
EDITAR :
Pude cambiar el color de fondo agregando estas líneas de código al tema:
<item name="colorPrimary">@color/actionbar</item>
<item name="colorPrimaryDark">@color/actionbar_dark</item>
Pero no afectarán el color del texto. ¿Qué me estoy perdiendo? En lugar del texto negro y el botón de menú negro, prefiero un texto blanco y botones de menú blancos:
Respuestas:
de nuevo, todo esto está en el enlace que proporcionaste
para cambiar el texto a blanco todo lo que tiene que hacer es cambiar el tema.
usa este tema
fuente
AppCompatActivity
lugar deActivity
.ACTUALIZACIÓN 11/12/2019: Biblioteca de componentes de materiales
Con las bibliotecas de Material Components y Androidx puede usar:
el
android:background
atributo en el diseño:aplicar el estilo predeterminado:
style="@style/Widget.MaterialComponents.Toolbar.Primary"
o personalizar el estilo heredado de él:anule el color predeterminado usando el
android:theme
atributo:con:
ANTIGUO: Bibliotecas de soporte:
puede usar un
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
tema como se sugiere en otras respuestas, pero también puede usar una solución como esta:Y puede tener el control total de sus elementos de interfaz de usuario con estos estilos:
fuente
Oye, si quieres aplicar el tema Material solo para Android 5.0, puedes agregar este tema en él
A continuación, la línea es responsable del color del texto de Actionbar of Material design.
fuente
Puede establecer un color de elemento de barra de herramientas personalizado dinámicamente creando una clase de barra de herramientas personalizada:
luego consúltelo en su archivo de diseño. Ahora puede establecer un color personalizado usando
Fuentes:
Encontré la información para hacer esto aquí: Cómo cambiar dinámicamente el color de los iconos de la barra de herramientas de Android
y luego lo edité , lo mejoré y lo publiqué aquí: GitHub: AndroidDynamicToolbarItemColor
fuente
Esto es lo que se conoce como DarkActionBar, lo que significa que debe usar el siguiente tema para obtener el estilo deseado:
fuente
Puede cambiar el color del texto en la barra de herramientas con estos:
fuente
Logre esto usando algo
toolbar
así:fuente
Pruebe esto en su styles.xml:
colorPrimary será el color de la barra de herramientas.
¿Construiste esto en Eclipse por cierto?
fuente
Resolví este problema después de más Estudio ...
para Api21 y más uso
para uso en versiones inferiores
fuente
Si desea cambiar el color de la barra de herramientas en toda su aplicación, aproveche styles.xml. En general, evito alterar los componentes de la interfaz de usuario en mi código Java a menos que esté intentando hacer algo programáticamente. Si se trata de una configuración única, debería hacerlo en xml para que su código sea más limpio. Así es como se verá su styles.xml:
Asegúrese de utilizar el estilo anterior en su AndroidManifext.xml como tal:
Quería diferentes colores de barra de herramientas para diferentes actividades. Así que aproveché los estilos nuevamente así:
nuevamente, aplique los estilos a cada actividad en su AndroidManifest.xml como tal:
fuente
Para las personas que utilizan AppCompatActivity con la barra de herramientas como fondo blanco. Utilice este código.
Actualizado: diciembre de 2017
fuente