2012-01-02 9 views
0

Viewをサブクラス化して、ユーザが指で描くことができるビューを取得します。私はインターフェイスView.OnTouchListenerを実装しました。TouchEventの後にViewを再描画するにはどうすればよいですか?

onTouchメソッド内でビューを再描画する方法を教えてください。 Thread/Runnableを実装する必要はありますか?私はinvalidate()が再描画をトリガすると思ったが、これは動作しません。

答えて

1

あなたのビューのonTouchEventメソッドでthis.invalidateを呼び出すだけで、あなたがonDrawメソッドで適切なことをしていない限り、実際にはを動作させるはずです。正しいキャンバスを参照していることを確認して、コンストラクタなどではなく、オーバーライドされたonDrawメソッドでオブジェクトを描画します。

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

ありがとうございました。私はOnTouchListenerを登録することを忘れていました: 'this.setOnTouchListener(this);'これでうまくいきます! – warci

関連する問題