如何檢測Android 2.1觸摸事件的持續時間?我只想在該地區被按下5秒後作出迴應?Android Touch Event確定持續時間
6
A
回答
12
您可以嘗試混合MotionEvent
和Runnable
/Handler
來實現此目的。
示例代碼:
private final Handler handler = new Handler();
private final Runnable runnable = new Runnable() {
public void run() {
checkGlobalVariable();
}
};
// Other init stuff etc...
@Override
public void onTouchEvent(MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN) {
// Execute your Runnable after 5000 milliseconds = 5 seconds.
handler.postDelayed(runnable, 5000);
mBooleanIsPressed = true;
}
if(event.getAction() == MotionEvent.ACTION_UP) {
if(mBooleanIsPressed) {
mBooleanIsPressed = false;
handler.removeCallbacks(runnable);
}
}
}
現在你只需要檢查,如果mBooleanIsPressed
是在checkGlobalVariable()
功能true
。
我寫這篇文章時提出的一個想法是使用簡單的時間戳(例如System.currentTimeMillis()
)來確定MotionEvent.ACTION_DOWN
和MotionEvent.ACTION_UP
之間的持續時間。
8
在這種情況下,您不能使用unix時間戳。 Android提供了自己的時間測量。
long eventDuration =
android.os.SystemClock.elapsedRealtime()
- event.getDownTime();
21
long eventDuration = event.getEventTime() - event.getDownTime();
相關問題
- 1. 的Android定製敬酒持續時間
- 2. 持續時間
- 3. monkeyrunner touch event longpress
- 4. AVG會話持續時間不正確?
- 5. AVAsset持續時間不正確
- 6. 時間片持續時間
- 7. Android:如何找到選取框textview滾動持續時間的持續時間
- 8. Scrollmagic持續時間
- 9. JSESSIONID持續時間
- 10. 持續時間爲
- 11. 蟒持續時間
- 12. UIStatusBarAnimationFade持續時間
- 13. VideoView持續時間
- 14. Groovy持續時間
- 15. 最大持續時間在Android
- 16. Android日曆事件持續時間(API)
- 17. Android啓動畫面持續時間
- 18. Android-動態overridePendingTransition持續時間
- 19. 的Android VideoView與持續時間-1
- 20. Android的持續時間就像在CSS
- 21. Android:通知聲音持續時間
- 22. 在android中獲取mp3持續時間
- 23. sencha touch textfield clear event
- 24. BLE持續小時間間隔連續RSSI掃描爲Android
- 25. 計算持續時間
- 26. 「持續時間($持續時間)」的「XPath無效」錯誤
- 27. 如何提取只包含持續時間的持續時間?
- 28. SqlCommand.ExecuteReader持續時間小於SQL Profiler批處理持續時間
- 29. 上willAnimateRotationToInterfaceOrientation不應答:(UIInterfaceOrientation)toInterfaceOrientation持續時間:(NSTimeInterval)持續時間
- 30. SQL事件探查器持續時間與SSMS持續時間
確定。這是我在大部分活動屏幕上需要的。我將如何在活動屏幕上啓用監聽。我已經在活動中實現了onTouchEvent偵聽器,但是如何爲該活動啓用此操作,以便在用戶觸摸活動屏幕時調用onTouchEvent。謝謝 – Androider 2011-03-11 22:17:26
大多數例子是根據畫布等。我的onTouchEvent沒有被調用時,用戶觸摸活動屏幕 – Androider 2011-03-11 22:20:47
@Androider:也許你正在尋找http://developer.android.com/reference/android/app/Activity的.html#dispatchTouchEvent(android.view.MotionEvent)? – Wroclai 2011-03-11 22:28:53