でArrayListの私は、次の基本的な構造でAndroidアプリケーションを書いて編集します。はonTouchEvent
MyThread.java
- 、surfaceHolder
が含まれていMyView.java
MyView.java
にupdate()
とrender()
関数を呼び出す - 、render()
機能を使用してキャンバスに描くMyPuzzle
クラスを更新し、タッチイベントを処理します。
MyPuzzle.java
- 要素のArrayList/Vector
を含んでいます。 MyPuzzle
クラス内に保持されたArrayList/Vector
の内容によってrender()
機能Iループでは、MyView
クラスで
、キャンバスにそれらを描く:
私の質問です。しかし、私は時折indexOutOfBounds
エラー(おそらく10回おきに)なっていた、同じMyView
クラスでi=0; i<arraylist.size()...
からループにもかかわらず、onTouchEvent
機能では、私が追加するコードを持っている/描かれているArrayList/Vector
から項目を削除。 render()
機能がArrayList/Vector
をループして、画面に要素を描いているよう
私のインデックスは、おそらくonTouchEvent
Sによるエラーが同時に処理されている範囲外はありますか?
onTouchEvent
がすぐに処理されず、ArrayList
キューに追加され、render()
が呼び出される前に処理されたシステムを実装しようとしました。これは、問題を解決したように見えます。これは正しいと思いますか?それは私を幾分怒らせてしまった。
ご迷惑をおかけして申し訳ありませんが、ご迷惑をおかけして申し訳ありません。
は、我々はあなたがエラーを取得しているコードを持つことができます例えば反復を含むリストのすべてのアクションに
synchronize
にする必要がありますか?それは私たちが皆を助けるのを助けるのに役立ちます。 – Jon