0

RelativeLayout 内に 3 つの LinerLayouts があり、各 LinerLayouts には 9 つのボタンが含まれています。今、ボタンに触れるたびにボタンの上に長方形のボックスを描きたいと思います。その長方形のボックスは、指の動きに合わせて各ボタンにスライド(移動)する必要があります。これを行う方法についてのアイデア..事前に感謝します。

4

1 に答える 1

0
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);

    canvas.drawRect(mRect, new Paint());
}

private Rect mRect = new Rect();

private static final int WIDTH = 100;
private static final int HEIGHT = 100;

private void setRectPosition(int x, int y) {
    mRect.set(x, y, WIDTH, HEIGHT);
    invalidate();
}

@Override
public boolean onTouchEvent(MotionEvent event) {
    float x = event.getX();
    float y = event.getY();
    setRectPosition((int)x, (int)y);
    return super.onTouchEvent(event);
}

これはうまくいくと思います。

于 2012-05-03T09:21:44.947 に答える