0
我分類爲View
以獲得用戶可以用手指「畫」的視圖。我實現了接口View.OnTouchListener
。如何在TouchEvent之後重新繪製視圖?
如何在onTouch
方法中觸發View的重繪?我是否需要實現Thread/Runnable?我認爲invalidate()
觸發重繪,但這不起作用。
我分類爲View
以獲得用戶可以用手指「畫」的視圖。我實現了接口View.OnTouchListener
。如何在TouchEvent之後重新繪製視圖?
如何在onTouch
方法中觸發View的重繪?我是否需要實現Thread/Runnable?我認爲invalidate()
觸發重繪,但這不起作用。
只要在你的視圖的onTouchEvent方法中調用this.invalidate,它應該工作,除非你沒有在你的onDraw方法中做正確的事情。確保你在正確的畫布中引用了重寫的onDraw方法而不是例如構造函數。
@Override
public boolean onTouchEvent(MotionEvent event) {
this.invalidate();
return true;
}
謝謝你的回答。我忘了註冊OnTouchListener:'this.setOnTouchListener(this);'現在它工作正常! – warci 2012-01-02 20:46:48