你好我想要做的是在drawable
文件bg.xml中设置一个值
这是文件
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<gradient
android:startColor="#ffc2e59c"
android:centerColor="#ff3a7a7a"
android:endColor="#ff3a7a7a"
android:angle="135"/>
</shape>
</item>
</selector>
如果文件存在,我想更改android:startColor="#ffc2e59c"
。 (我已经知道使用if来使用它。)
所以我想做的是
my lines {
if (filee.exists()) {
change the color to something else
(android:startColor="#ffffffff")
}
}
答案 0 :(得分:0)
我认为完成这项工作的正确方法是:
File f = new File("cbc.db");
if(f.exists() && !f.isDirectory()) {
int h = v.getHeight();
ShapeDrawable mDrawable = new ShapeDrawable(new RectShape());
mDrawable.getPaint().setShader(new LinearGradient(0, 0, 0, h, Color.parseColor("#330000FF"), Color.parseColor("#110000FF"), Shader.TileMode.REPEAT));
v.setBackgroundDrawable(mDrawable);
}
有关详细信息,请参阅this post。
答案 1 :(得分:0)
你可以创建另一个drawable并实际添加为背景,如图所示here