android自定义shape oval,Android中的Shape,RoundRectShape,ArcShape, OvalShape

在做Android的项目的时候碰到一个在在代码中动态的给一个Group添加一个有些圆角的背景没有用shape.xml文件来搞用的代码,看了好一会了才明白RoundRectShape各个参数的意思,记录下来省的以后再忘。先看官网的一个图,表示了这个几个类之间的继承关系

Shape的继承关系.png

RoundRectShape

float[] outerRadii = {20, 20, 30, 30, 40, 40, 50, 50};//外矩形 左上、右上、右下、左下的圆角半径

RectF inset = new RectF(100, 100, 100, 100);//内矩形距外矩形,左上角x,y距离, 右下角x,y距离

float[] innerRadii = {20, 20, 20, 20, 20, 20, 20, 20};//内矩形 圆角半径

RoundRectShape roundRectShape = new RoundRectShape(outerRadii, inset, innerRadii);

ShapeDrawable drawable = new ShapeDrawable(roundRectShape);

drawable.getPaint().setColor(Color.BLACK);

drawable.getPaint().setAntiAlias(true);

drawable.getPaint().setStyle(Paint.Style.STROKE);//描边

mImage.setBackground(drawable);

代码中RoundRectShape(floa

你可能感兴趣的:(android自定义shape,oval)