我正在尝试在图库顶部绘制自定义UI(本例中为路径)。我扩展了基础Gallery类并覆盖了draw方法,如下所示:
public class MyGallery extends Gallery {
...
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawPath(mPath, mPaint);
}
我认为在super.onDraw
之后绘制我的路径绘图会确保路径绘制在图库的顶部并且是子视图,而是将子视图分层放在我的路径之上。
有谁知道如何正确绘制这个?
(我知道我可以包含一个RelativeLayout并进一步构图以在画廊顶部绘制我的路径,但我宁愿将它全部保存在一个类中)
答案 0 :(得分:5)
我在询问后发现这一点,所以决定发帖,以防有人有同样的问题。要在图库中绘制子视图,请覆盖dispatchDraw
而不是onDraw
@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
canvas.drawPath(mPath,mPaint);
}