我在Shape
中定义了xml
。现在我需要从代码中更改solid color
,请问您如何建议?
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="10dp">
<solid android:color="#000000"/>
<corners
android:bottomRightRadius="8dp"
android:bottomLeftRadius="8dp"
android:topLeftRadius="0dp"
android:topRightRadius="0dp"/>
</shape>
答案 0 :(得分:7)
我在我的代码中使用它
GradientDrawable myGrad = (GradientDrawable)rectangle.getBackground();
myGrad.setColor(Color.BLACK);
希望这会有所帮助:)
编辑:GradientDrawable
代替ShapeDrawable
答案 1 :(得分:0)
当我设置项目的背景(在listview中)xml中定义的形状时,我遇到了问题,当我调用convertview的getBackground()方法时,我得到了ClassCastException,但是当我调用项目的outest视图的getBackground()方法,异常消失,问题解决。