【发布时间】:2021-06-30 06:22:37
【问题描述】:
我一直在尝试创建自定义视图like this
我的代码
Paint paint = new Paint();
paint.setColor(Color.WHITE);
paint.setStrokeWidth(6);
float radius = getFloat(20);
CornerPathEffect corEffect = new CornerPathEffect(radius);
paint.setPathEffect(corEffect);
Path path = new Path();
path.reset();
float top = getFloat(5);
path.moveTo(0, top);
float d = 80;
path.lineTo((getWidth() - getFloat(d)) / 2, top);
RectF oval = new RectF((getWidth() - getFloat(d)) / 2, top, (getWidth() + getFloat(d)) / 2, getFloat(d/2));
path.arcTo(oval, 90, 360, false);
path.lineTo((getWidth() + getFloat(d)) / 2, top);
path.lineTo(getWidth(), top);
path.lineTo(getWidth(), getHeight());
path.lineTo(0, getHeight());
path.close();
paint.setShadowLayer(12, 0, 0, Color.argb(255, 200, 200, 200));
setLayerType(LAYER_TYPE_SOFTWARE, paint);
canvas.drawPath(path, paint);
如何让坑更圆like this?
【问题讨论】: