我想创建一个可绘制的图形,其中包含一个带有来自外部文件的背景色的圆。因此,不幸的是,我不能简单地从Xml文件加载可绘制对象,而必须在Java中动态创建它。 如何直接在Java中创建圈子?
答案 0 :(得分:1)
您可以使用ShapeDrawables:
ShapeDrawable shapeDrawable = new ShapeDrawable(new OvalShape());
shapeDrawable.setIntrinsicHeight(height);
shapeDrawable.setIntrinsicWidth(width);
对于圆形,只需使用相同的高度和宽度即可。
答案 1 :(得分:0)
我终于找到了一种创建椭圆形可绘制对象的简便方法:
GradientDrawable gd = new GradientDrawable();
int fillColor = Color.parseColor("FF0000");
gd.setColor(fillColor);
int strokeWidth = 2; // px not dp
int strokeColor = Color.parseColor("#000000");
gd.setStroke(strokeWidth, strokeColor);
gd.setShape(GradientDrawable.OVAL);