我想创建我的自定义视图。从底部到顶部具有轻微正弦曲线的视图仅具有简单的其他视图,无论我要选择什么颜色。就像我想为该视图选择渐变颜色一样。
我尝试过的事情
我在我的代码中尝试了一个SineView和另一个WaveView,但无法按预期工作。
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
int width = canvas.getWidth();
int height = canvas.getHeight();
canvas.save();
canvas.translate(0, getMeasuredHeight() / 2F);
canvas.clipRect(0, -100, 450, 100, Region.Op.INTERSECT);
Path mPath = new Path();
mPath.moveTo(0, 100);
mPath.quadTo(50, -50, 100, 0);
mPath.quadTo(150, 50, 200, 0);
mPath.quadTo(250, -50, 300, 0);
mPath.quadTo(350, 50, 400, 0);
mPath.quadTo(450, -50, 500, 100);
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.GRAY);
canvas.drawPath(mPath, paint);
canvas.restore();
}
期望的观看次数
我还希望视图的高度可以随着换行内容而增加。我不想增加正弦曲线,只是想增加布局的高度。