Diseño del menú emergente en Android 5.0

Estoy haciendo mi aplicación lista para Android 5.0, estoy usando la última compatibilidad de la biblioteca, aquí es lo que mi estilo se parece.

<resources> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorPrimary">@color/theme_accent</item> <item name="colorAccent">@color/theme_accent_secondary</item> </style> <style name="AppThemeDark" parent="Theme.AppCompat"> <item name="colorPrimary">@color/theme_accent</item> <item name="colorAccent">@color/theme_accent_secondary</item> </style> </resources> 

(El color de ActionBar se está configurando de forma programática.)

Ahora, quiero que el menú de desbordamiento / popup tenga el fondo oscuro como en la implementación holo, pero no puedo conseguir que funcione, aquí es lo que parece: Introduzca aquí la descripción de la imagen

He intentado fijar el popupMenuStyle pero no trabajó.

¿Cómo puedo hacer que el menú emergente sea más oscuro?

Deje de usar el ActionBar . Si desea configurar una ActionBar ToolBar como una ActionBar , siga esta guía en el blog de desarrolladores de android.

Realmente menciona su caso de uso en Dark Action Bar y proporciona este código:

 <android.support.v7.widget.Toolbar android:layout_height=”wrap_content” android:layout_width=”match_parent” android:minHeight=”@dimen/triple_height_toolbar” app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> 

No es una respuesta completa, pero lo que he encontrado hasta ahora:

En las versiones pasadas era necesario especificar un drawable (consulte https://github.com/StylingAndroid/StylingActionBar código y tutoriales)

Al parecer, ahora que es un color. Para modificarlo es necesario especificar el siguiente tema:

 <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="AppTheme" parent="android:Theme.Material.Light.DarkActionBar"> <item name="android:actionBarPopupTheme">@style/popupNew</item> </style> <style name="popupNew" parent="android:ThemeOverlay.Material.Light"> <item name="android:colorBackground">@color/red</item> </style> </resources> 

Esto funciona correctamente si el tema aplicado a la aplicación es justo esto. Si agrego android:actionBarPopupTheme a mi tema existente, no funciona. Estoy tratando de averiguar por qué.

Añade la propiedad popupTheme a tu barra de herramientas:

 <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/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/color_primary" app:theme="@style/Theme.AppCompat.Light" app:popupTheme="@style/Theme.AppCompat" /> 

O defina un nuevo estilo para su barra de herramientas:

 <style name="MyToolBarStyle" parent="Widget.AppCompat.Toolbar"> <item name="android:background">@color/green</item> <item name="popupTheme">@style/Theme.AppCompat.Light</item> <item name="theme">@style/Theme.AppCompat</item> </style> 

Resolvió mi problema usando este estilo:

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorPrimary">@color/theme_accent</item> <item name="colorAccent">@color/theme_accent_secondary</item> <item name="actionBarStyle">@style/AbStyle</item> <item name="actionModeBackground">@color/actionmode_bg</item> </style> <style name="AbStyle" parent="Widget.AppCompat.Toolbar"> <item name="elevation">2dp</item> <item name="displayOptions">homeAsUp|showTitle</item> <!--showHome--> </style> <style name="AppThemeDark" parent="Theme.AppCompat"> <item name="colorAccent">@color/theme_accent_secondary</item> <item name="actionBarStyle">@style/AbStyle</item> </style> 

Tuve que usar Widget.AppCompat.Toolbar como el padre actionBarStyle

  • Cómo insertar ListView en CardView con barra de desplazamiento fuera de CardView?
  • Cambio de Android Color de sombra de elevación de material
  • Cómo utilizar TabLayout con la barra de herramientas dentro de CollapsingToolbarLayout?
  • Animación de la actividad de capa deslizante android
  • ¿Cómo imitar la aplicación de Lollipop teléfono, con el cambio de tamaño de los elementos superiores antes de que el contenido desplazable?
  • ¿Cómo puedo crear un widget de interfaz de usuario de diseño de material de Android?
  • Cómo mostrar los elementos colapsados ​​en CoordinatorLayout mediante programación?
  • Intención de actividad en Side-Menu.Android de diseño de material
  • Cómo cambiar el color de la barra de herramientas y los colores de la barra de estado de acuerdo con el color de la imagen en el diseño de material android?
  • Botones de diálogo con texto largo que no se envuelven / exprimido - tema material en android 5.0 lollipop
  • Cast sombra en la parte superior de LinearLayout usando android: elevación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.