在Android中拖放重叠的ImageView

我有一个由10×10正方形组成的桌面式游戏板.每个方块都是PNG图像.在这些正方形的顶部,我想将可拖放的瓦片放置在正方形的顶部.

关于“视图”,我最好的方法是什么?

是否可以具有两层,其中第一层是代表板的ImageView的网格.那么是否有可能让图块也成为ImageView,并且可以“堆叠”在代表板的ImageView的顶部?

任何好的设计想法都欢迎!

谢谢.

/亨里克

解决方法:

在您的视图中覆盖onTouchEvent:

@Override
public boolean onTouchEvent(MotionEvent event) {
    super.onTouchEvent(event);

    if (!mEnable) {
        return false;
    }

    int action = event.getAction();
    int x = (int)event.getX();
    int y = (int)event.getY();

    switch (action) {
    case MotionEvent.ACTION_DOWN:
        onTouchActionDown(x, y);
        break;
    case MotionEvent.ACTION_MOVE:
        onTouchActionMove(x, y);
        break;
    case MotionEvent.ACTION_UP:
        onTouchActionUp(x, y);
        break;
    }

    return true;
}

然后在onTouchActionUp / Down中仅使用坐标并重新绘制图像资源,即invalidate()您的视图.

覆盖onDraw以绘制拖动的图形:

@Override
protected void onDraw(Canvas canvas)
   drawMyDragGfx();
}
上一篇:史上最简单的SpringCloud教程 | 第十一篇: docker部署spring cloud项目


下一篇:java-android图像视图内存不足错误