-1

アニメーションの再生中にタッチリスナーを無効にしたい。これには WebView を使用しましたが、アニメーションは正常に実行されています。しかし、問題は、1 つのループが完了するまで、タッチ リスナーを有効にしたくないということです。ループが完了したら、ループが再び再生されるようにタッチ リスナーを有効にしたいと考えています。タッチモーションイベントを使用していますが、必要なことを行うことができません。

GIFWebView view = new GIFWebView(this, "file:///android_asset/imageedit_ball.gif");
setContentView(view);

public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub 
   if (event.getAction()==MotionEvent.ACTION_DOWN) { 
       // view.loadUrl("file:///android_asset/imageedit_ball.gif"); 
       GIFView view1 = new GIFView (this, "file:///android_asset/imageedit_ball.gif");
       setContentView(view1); 
       view1.setOnTouchListener(this);
   }
   return true; 
}
4

2 に答える 2

2

アニメーションがオンであるか停止しているかにかかわらず、フラグ変数を保持する必要があります。

public boolean isAnimationOn = false;

trueアニメーションの開始時と終了時にこの変数を作成しますfalse

public boolean onTouch(View v, MotionEvent event){
    if (isAnimationOn)
        return false;
    else
        return true;
} 
于 2013-08-14T10:07:52.437 に答える