2011-04-20 61 views
0

我有一个基于Android Gallery视图的自定义小部件。它被稍微定制为显示视图左侧的元素而没有间隙,并将所需事件传递给我的聆听者。Android自定义视图绘制不正确

在第一个视图布局上,一切都很完美。但是,当我暂停并恢复活动时,视图会冻结。这是可见的,我可以看到OnTouch()事件处理程序工作,查看位置调整,但图片没有改变。 Gallery小部件的OnDraw()方法完全不会被调用! 我在这个布局中有另一个小部件(一个滑动抽屉),只要我几乎不移动抽屉,所有的东西都会再次开始工作。

我完全没有想法如何解决这个问题。尝试了不同的方法来强制OnDraw()方法,但它不工作。

任何想法?

感谢

回答

0

确保您覆盖onDraw(android.graphics.Canvas),而不是OnDraw()(均为Canvas参数和小写最初的“o”)。

如果不是这样,那么请张贴一些代码来看看它。

+0

我不需要重写onDraw(Canvas)方法,因为我没有在画布上绘制任何自定义内容。我已经重写了这个方法,只是在它里面添加了一个跟踪,看它是否被调用。 我注意到如果我为布局运行层次结构查看器,它会冻结并开始工作。所以它看起来像requestLayout()不在某处调用。尝试在不同的地方调用requestLayout()而没有任何成功。 – basv 2011-04-21 06:16:27