애니메이션을 재생할 때 ontouch 리스너를 잠 그려고합니다. 이것은 내 코드입니다.온 터치 리스너 잠금
public class MainActivity extends Activity implements OnTouchListener {
boolean gifIsPlaying;
long PLAYING_TIME_OF_GIF = 111;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GIFWebView view = new GIFWebView
(this, "file:///android_asset/imageedit_ball.gif");
gifIsPlaying = true;
new Handler().postDelayed(new Runnable() {
public void run() {
gifIsPlaying = false;
}
}, PLAYING_TIME_OF_GIF);
setContentView(view);
view.setOnTouchListener(this);
}
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (gifIsPlaying) {
// No response to touch events
} else {
// Respond to touch events
GIFWebView view1 = new GIFWebView
(this, "file:///android_asset/imageedit_ball.gif");
gifIsPlaying = true;
new Handler().postDelayed(new Runnable() {
public void run() {
gifIsPlaying = false;
}
}, PLAYING_TIME_OF_GIF);
setContentView(view1);
}
// Consume touch event
return true;
}
}
나는 ontouch 내에서 ontouch를 구현하려했지만 사용하지 않았습니다. gif 애니메이션이 루프를 완료 할 때까지 온 오프를 반복합니다. 도와주세요.
코드를 실행하기 위해 onTouch 내부에 부울 변수를 사용하십시오. TimerTask를 사용하여 일정 시간 기다렸다가 부울 변수를 전환 할 수 있습니다. – bakriOnFire
public boolean isAnimationOn = false; public boolean onTouch (View v, MotionEvent 이벤트) { if (isAnimationOn) false를 반환합니다. else return true; 은} 나는 u를 사용했다 적절한 코드 구현 .. – Meghs
를 작동하지 않는 시도 \t \t \t if (event.getAction() == MotionEvent).ACTION_DOWN) {(로드 된 경우 \t \t \t \t \t \t) {\t \t \t \t \t \t 반환 거짓 \t \t; \t \t \t \t \t \t \t} 다른 \t \t \t { \t \t \t \t \t \t \t \t GIFWebView의 뷰 1 = 새로운 GIFWebView \t \t \t \t \t (이, "파일 : /// android_asset/imageedit_ball. gif "); \t \t \t \t setContentView (view1); \t \t \t \t view1.setOnTouchListener (this); \t \t \t} \t \t \t \t \t} 사실 \t \t \t \t 반환; \t} – bakriOnFire