2012-07-16 103 views
-2

我想測量連續點擊之間的時間(以毫秒爲單位)。我怎樣才能做到這一點?如何測量水龍頭之間的時間達到毫秒?

+0

對於每個水龍頭獲取當前時間,並找出圈流水龍頭時間之間的差異。 – 2012-07-16 20:44:34

+0

使用[System.currentTimeMillis()](http://developer.android.com/reference/java/lang/System.html#currentTimeMillis%28%29) – Squazic 2012-07-16 20:45:50

+0

可能的重複[android - 測量兩者之間的時間按鈕點擊](http://stackoverflow.com/questions/7965065/android-to-measure-the-time-betweeen-the-two-button-clicks) – Sam 2012-07-16 20:57:13

回答

6
View myView; 
long previousClickTime; 

... 

myView.setOnTouchListener(new View.OnTouchListener(){ 
    @Override 
    public boolean onTouch(View v, MotionEvent ev) 
    { 
     long temp = System.currentTimeMillis(); 
     if (previousClickTime != 0) 
     { 
      Log.i("MyView", "Time Between Clicks=" + (temp - previousClickTime)); 
     } 
     else 
     { 
      Log.i("MyView", "First Click"); 
     } 
     previousClickTime = temp; 

     return true;//Note that you can return false, and any underlying Views will then receive this touch event. 
    } 
} 

作爲一個側面說明,如果你想檢測雙擊,嘗試GuestureDetector.setOnDoubleTapListener

1

覆蓋onCLick()事件。

onClick()事件中。讓您的應用獲得第一次點擊並存儲時間。然後第二次存儲並獲得兩次敲擊之間的差異。只顯示差異。

下面的代碼是非常簡單的,可能不是你在找什麼,但我把它作爲一個非常簡單的例子。

long initialTime = 0; 
long endTime = 0; 

onClick() { 

    if(initialTime == 0){ 
     initialTime = System.currentTimeMillis(); 
    } else { 
     endTime = System.currentTimeMillis(); 
     long diff = endTime - initialTime; 
     initialTime = endTime; 
     Log.i("your app", "time between click: " + diff); 
    } 

}