30

我一直在努力将我的应用更新为Material Design。popup使用Material Design设计的背景故障

我有一个使用选项卡的应用程序。由于某种原因,每当我使用android:popupBackground来设置下拉菜单的颜色时,它就吓倒了。

https://i.imgur.com/Qm2NDYH.png

我设置了选项卡的默认的项目,并使用了以下主题,同样的事情发生。有其他人有这个问题吗?我的应用程序是开源的,所以所有的代码都可以在这里GitHub

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <item name="actionDropDownStyle">@style/Dropdown</item> 
    </style> 
    <style name="Dropdown" parent="Widget.AppCompat.Light.Spinner.DropDown.ActionBar"> 
     <item name="android:popupBackground">#000</item> 
     <item name="android:paddingLeft">32dp</item> 
     <item name="android:paddingRight">32dp</item> 
    </style> 
</resources> 
+7

已经为未来版本修复的框架错误。您可以使用具有圆角的可绘制背景作为临时解决方法。默认的弹出式菜单背景使用2dp圆角,所以无论如何这都会更好地匹配。 – alanv 2014-11-06 07:15:54

+3

我在这里找到解决方法: http://stackoverflow.com/questions/28013120/spinner-graphical-bug-api-21/28836851#28836851 – PaMaDo 2015-03-03 16:31:45

+0

尝试禁用硬件加速http://developer.android.com/guide /topics/graphics/hardware-accel.html – 2015-09-03 10:54:20

回答

1

我曾经遇到过类似的问题与微调。由于@alanv提到使用形状作为背景而不是颜色将解决问题。

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="rectangle"> 
<corners android:radius="2dp" /> 
<solid android:color="#000000" /> 
</shape> 

UPDATE它在最新的程序兼容性解决。