我为矩形创建了一个类,因为它是我的应用程序中的一个对象。但是现在我希望角落变圆。您可以在下面看到它是一个简单的类,可以创建具有相同属性的任意数量的矩形。
public class customDrawable extends ShapeDrawable {
public void setCustomDrawableAttributes(ShapeDrawable shapeDrawable){
int x = 0;
int y = 0;
int width = 100;
int height = 100;
shapeDrawable.setBounds(x, y-height, x + width,y+height );
}
public ShapeDrawable createShape(){
return new ShapeDrawable(new RectShape());
}
}
更新:没有这种方法,我什么都不会被绘制,因为没有大小。有了它,它只绘制通常的矩形。(更改为不显示应用特定方法的整数值)
public void setDrawableAttributes(ShapeDrawable shapeDrawable){
int x = 0;
int y = 500
int width = 200
int height = 300
shapeDrawable.setBounds(x, y-height, x + width,y+height );
}
根据我的研究,我发现我不能简单地添加圆角,而是必须创建一个RoundRectShape shapeDrawable
. 我用它创建一个圆角矩形的每一次尝试都RoundRectShape
失败了。不知何故,形状总是最终成为一个没有圆角的规则矩形。
我正在寻找一个创建roundRectShape 可绘制对象的裸骨类(如提供的类)。只要它有圆角,高度和宽度就无关紧要。必须使用 Java 而不是 XML。
我尝试创建圆角矩形的链接:
1. https://developer.android.com/reference/android/graphics/drawable/shapes/RoundRectShape.html
6.Android:RoundRectShape :修改圆角半径
8. http://www.edumobile.org/android/shape-drawing-example-in-android/ 9. http://programtalk.com/java-api-usage-examples/android.graphics.drawable.shapes。圆形矩形/