好的,这是交易。我想在扩展库类中移动项目以更改图像的顺序。我现在这样做的方式:
onDraw()
绘制相同的图片,以便我可以使用onTouchEvent()
这很好用,但问题是当使用onDraw()
方法时,它会在图库项目后面绘制图像。有没有办法改变绘制的优先级?
答案 0 :(得分:33)
我进入一个完全不同的方向后发现了这个= /
以下是具有相同问题的人的解决方案:
在构造函数(或初始化组件的任何其他位置)中设置setWillNotDraw(false)
并覆盖dispatchDraw()
。 dispatchDraw()
绘制了ViewGroup
个孩子,这样您就可以自己决定是否要在其他视图后面或顶部绘制。
取自Custom drawing on top of Gallery view (and it's child views)
的示例@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
// do your drawing stuff here
canvas.drawPath(mPath,mPaint);
}