Android在屏幕上绘制一条线并在单击屏幕上的按钮后将其删除

时间:2012-09-05 19:44:12

标签: android android-layout

我是我的应用程序中的Android开发新手我想在手指移动上画线,并想要删除我用屏幕上提供的按钮单击绘制的所有线条。  我能够绘制线条,但我无法删除线条,线条也不平滑。

1 个答案:

答案 0 :(得分:1)

创建一个代表你的行的类,例如:

public class Line{
    public float startX;
    public float startY;
    public float endX;
    public float endY;
    public int colour;
    private Paint paint;
    ...
    ...

    public Line(float startX, float startY, float endX, float endY, int colour){
        this.startX = startX;
        this.startY = startY;
        this.endX = endX;
        this.endY = endY;
        this.paint = new Paint();
        this.paint.setColor(colour);
        // look at the antialias and dither options for paint to create a smooth line
        ...
        ...
    }

    public draw(Canvas canvas){
       canvas.drawLine(this.startX, this.startY, this.endX, this.endY, paint);
    }

}

然后在您的活动中,创建一个Line对象列表,例如ArrayList行;

在触摸事件中,不是画线,而是在列表中添加新行。然后,在你的onDraw方法中,像这样:

 for(Line line:lines){
     line.draw(canvas);
 }

最后,在按钮单击中,从行列表中删除行对象。

祝你好运!