Issue
i'm making a custom TextView (Java class) and i'm having trouble "to translate" the line (on "original TextView" xml)
android:background="@drawable/myDrawableShape"
to a java void to change the color of the "myDrawableShape"
myDrawableShape.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#ffafafaf" />
<corners android:radius="15dp" />
I'll get the color to set from a String, the void to change the color programmatically could be (for example)
void colorSet(String color)
Thanks in advance!
Solution
You can then create your Shape Drawable in Java itself using below code.
public Drawable getRoundRect() {
RoundRectShape rectShape = new RoundRectShape(new float[]{
10, 10, 10, 10,
10, 10, 10, 10
}, null, null);
ShapeDrawable shapeDrawable = new ShapeDrawable(rectShape);
shapeDrawable.getPaint().setColor(Color.parseColor("#FF0000"));
shapeDrawable.getPaint().setStyle(Paint.Style.FILL);
shapeDrawable.getPaint().setAntiAlias(true);
shapeDrawable.getPaint().setFlags(Paint.ANTI_ALIAS_FLAG);
return shapeDrawable;
}
Answered By - Muthukrishnan Rajendran
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.