Android -在运行时更改可绘制的颜色

2q5ifsrm  于 2023-08-01  发布在  Android
关注(0)|答案(2)|浏览(115)

我在Android应用程序中的表格布局中使用了drawable单元格。我想更改单击事件的单元格颜色。是否可以在运行时更改可绘制对象的颜色。我画的是

<?xml version="1.0" encoding="utf-8"?>
<shape
  xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape= "rectangle"  >
        <solid android:color="#FFFFFF"/>
        <stroke android:width="1dp"  android:color="#483D8B"/>
</shape>

字符串
我想用点击事件改变白色“#FFFFFF”。Java可以编辑XML可绘制文件中的颜色吗?我只是编辑了背景色,它分散了可绘制的边界。

String StatusColor=GetColor(Retailer_x.getStatus());
Stts.setBackgroundColor(Color.parseColor(StatusColor));

kgqe7b3p

kgqe7b3p1#

ShapeDrawable sd1 = new ShapeDrawable(new RectShape());
                        sd1.getPaint().setColor(CommonUtilities.color);
                        sd1.getPaint().setStyle(Style.STROKE);
                        sd1.getPaint().setStrokeWidth(CommonUtilities.stroke);
                        sd1.setPadding(15, 10, 15, 10);

                        sd1.getPaint().setPathEffect(
                                new CornerPathEffect(CommonUtilities.corner));
                        ln_back.setBackgroundDrawable(sd1);

字符串

tkclm6bt

tkclm6bt2#

使用表格单元格背景的selector来更改用户单击表格单元格时的状态。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- selected -->
    <item android:drawable="@drawable/red_drawable" android:state_selected="true"/>
    <!-- focused -->
    <item android:drawable="@drawable/gray_drawable"/>
    <!-- default -->

</selector>

字符串

相关问题