如何在TouchEvent之后重绘View?

时间:2012-01-02 19:42:27

标签: android android-widget android-view

我将View子类化,以获得用户可以用手指“绘制”的视图。我实现了接口View.OnTouchListener

如何在onTouch方法中触发重绘视图?我需要实现一个Thread / Runnable吗?我认为invalidate()会触发重绘,但这不起作用。

1 个答案:

答案 0 :(得分:1)

只需在视图的onTouchEvent方法中调用this.invalidate即可,除非你在onDraw方法中没有做正确的事情,否则它应该可以正常工作。确保你引用的是右边的canvas在您重写的onDraw方法中绘制事物而不是例如构造函数。

@Override
public boolean onTouchEvent(MotionEvent event) {
    this.invalidate();
    return true;
}