我将View
子类化,以获得用户可以用手指“绘制”的视图。我实现了接口View.OnTouchListener
。
如何在onTouch
方法中触发重绘视图?我需要实现一个Thread / Runnable吗?我认为invalidate()
会触发重绘,但这不起作用。
答案 0 :(得分:1)
只需在视图的onTouchEvent方法中调用this.invalidate即可,除非你在onDraw方法中没有做正确的事情,否则它应该可以正常工作。确保你引用的是右边的canvas在您重写的onDraw方法中绘制事物而不是例如构造函数。
@Override
public boolean onTouchEvent(MotionEvent event) {
this.invalidate();
return true;
}