我使用定义为drawable的形状作为TextView的背景。这允许我添加圆角和其他效果。 形状定义如下:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<corners android:topLeftRadius="8dp" />
</shape>
我正在使用它:
<TextView
android:id="@+id/project"
style="@style/textView"
android:background="@drawable/project_textview_background"
/>
现在,我需要根据某些条件以编程方式更改TextView的颜色。我无法做到这一点。
非常感谢任何帮助。谢谢 有什么想法吗?
答案 0 :(得分:2)
解决方案实际上是在代码中设置形状和颜色,而不是使用可绘制资源。 我使用了PaintDrawable(int color),它允许我定义我想要的任何背景颜色。然后我使用setCornerRadoii(float [])来定义圆角,最后我将PaintDrawable对象分配给我的textView背景。像魅力一样工作。
答案 1 :(得分:0)
您可以使其他形状仍然具有您已定义的角落属性。 用bgcolor填充单元格的方法写在下一个网页中。(实体) http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape
如果你提到的条件取决于焦点或按下,你最好选择而不是形状。在android引用中搜索关键字“ColorStateList”。我想留下地址,但由于我的声誉,我不能;;;