AndEngine을 사용하여 onSceneTouchEvent 이벤트를 캡처 중입니다.Android에서 더블 탭 캡처하기
내가하고 싶은 것은 사용자가 화면을 두드리는 것을 포착 할 수 없도록하는 것입니다.
어쨌든 더블 탭을 감지하거나 비활성화 할 수 있습니까?
감사
AndEngine을 사용하여 onSceneTouchEvent 이벤트를 캡처 중입니다.Android에서 더블 탭 캡처하기
내가하고 싶은 것은 사용자가 화면을 두드리는 것을 포착 할 수 없도록하는 것입니다.
어쨌든 더블 탭을 감지하거나 비활성화 할 수 있습니까?
감사
이 편집 : 더 일부 둘러보고 후, 나는이 더 잘 맞는 것 같아요 :
// in an onUpdate method
onUpdate(float secondsElapsed){
if(touched){
if(seconds > 2){
doSomething();
touched = false;
seconds = 0;
} else{
seconds += secondsElapsed;
}
}
}
부터 촬영 : 위의 의견을 바탕으로 http://www.andengine.org/forums/gles1/delay-in-touchevent-t6087.html
, 확실 해요 SystemClock을 사용하여 다음과 같은 작업을 수행 할 수 있습니다.
이 유사한 지연, 뭔가를 추가로 멀리 얻을 수 있습니다 :
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if(firstTap){
thisTime = SystemClock.uptimeMillis();
firstTap = false;
}else{
prevTime = thisTime;
thisTime = SystemClock.uptimeMillis();
//Check that thisTime is greater than prevTime
//just incase system clock reset to zero
if(thisTime > prevTime){
//Check if times are within our max delay
if((thisTime - prevTime) <= DOUBLE_CLICK_MAX_DELAY){
//We have detected a double tap!
Toast.makeText(DoubleTapActivity.this, "DOUBLE TAP DETECTED!!!", Toast.LENGTH_LONG).show();
//PUT YOUR LOGIC HERE!!!!
}else{
//Otherwise Reset firstTap
firstTap = true;
}
}else{
firstTap = true;
}
}
return false;
}
는
OnTap listener implementation
고마워요. 좋은 대답들 –
에서 촬영이 솔루션을 본 적이 있나요? 시스템 클럭을 사용하여 지연 시간을 설정하려면 http://stackoverflow.com/questions/6716224/ontap-listener-implementation을 참조하십시오. 그게 도움이 될거야. – TryTryAgain
흠. 흥미 롭습니다. 예를 들어 답을 제시하면 올바르게 표시됩니다. –
링크를 제공해 주셔서 감사합니다. 작동합니다. 행복하게 도왔습니다. –