在我们的应用程序中,我们遇到了一些奇怪的行为,其颜色是我们的一个drawables。我们在代码的许多地方使用它作为按钮的背景,背景drawable只在xml布局中设置,我们没有在Java中动态应用任何色调或滤色器。
看似随意的可绘制颜色是白色或黑色,在我们使用它的所有地方都是这样的 - >这听起来像是在构建时间内drawable被破坏(发生在调试和发布版本中,尝试过清理项目)。这也不是设备或操作系统特定的,在许多设备上尝试过并且仍然是随机发生的...... 帮助
违规背景可绘制
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/green"/>
<corners android:radius="@dimen/default_corner_radius"/>
</shape>
使用背景可绘制的按钮
<Button
android:id="@+id/button"
style="?android:attr/borderlessButtonStyle"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginBottom="10dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:background="@drawable/bg_rounded_green"
android:drawableLeft="@drawable/left_drawable"
android:fontFamily="@font/open_sans_bold"
android:foreground="?attr/selectableItemBackground"
android:maxLines="2"
android:paddingLeft="@dimen/padding"
android:paddingRight="@dimen/padding"
android:text="@string/the_string"
android:textAllCaps="true"
android:textColor="@android:color/white"
android:textSize="@dimen/buttons"
/>
</LinearLayout>