在Gallery视图顶部自定义绘图(及其子视图)

时间:2012-06-15 15:55:28

标签: android gallery android-gallery android-custom-view ondraw

我正在尝试在图库顶部绘制自定义UI(本例中为路径)。我扩展了基础Gallery类并覆盖了draw方法,如下所示:

public class MyGallery extends Gallery {
...
@Override 
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    canvas.drawPath(mPath, mPaint);
}

我认为在super.onDraw之后绘制我的路径绘图会确保路径绘制在图库的顶部并且是子视图,而是将子视图分层放在我的路径之上。 有谁知道如何正确绘制这个? (我知道我可以包含一个RelativeLayout并进一步构图以在画廊顶部绘制我的路径,但我宁愿将它全部保存在一个类中)

1 个答案:

答案 0 :(得分:5)

我在询问后发现这一点,所以决定发帖,以防有人有同样的问题。要在图库中绘制子视图,请覆盖dispatchDraw而不是onDraw

@Override
protected void dispatchDraw(Canvas canvas) {
    super.dispatchDraw(canvas);
    canvas.drawPath(mPath,mPaint);
}