2011-02-12 58 views
1

我正在創建媒體錄像機演示應用程序。因爲我有兩個按鈕啓動和停止。
我想顯示計時器,當點擊開始按鈕,並想停止停止按鈕。Android:使用定時器錄音

有什麼想法嗎?

感謝

回答

2

簡單的解決方案可以根據這些類:

public static class TimeCounter{ 
    private long startTime; 

    public TimeCounter(){ 
     startTime = new Date().getTime(); 
    } 

    public long countTime(){ 
     return new Date().getTime() - startTime; 
    } 
} 

public class TimeCounterTask extends AsyncTask<TimeCounter, Long, Void>{ 

    @Override 
    protected Void doInBackground(TimeCounter... params) { 
     TimeCounter tc = params[0]; 
     while(true){ 
      publishProgress(new Long(tc.countTime())); 
      try{ 
       Thread.sleep(500); 
      } catch(InterruptedException e){ 
       break; 
      } 
     } 
     return null; 
    } 

    @Override 
    protected void onProgressUpdate(Long... values) { 
     super.onProgressUpdate(values); 
     long millis = values[0].longValue(); 
     int minutes = (int) ((millis/1000)/60); 
     int seconds = (int) ((millis/1000) % 60); 
     String s = String.format("%d min, %d sec", 
       minutes, seconds); 
     timerText.setText(s); 
    } 

} 
  • 在啓動按鈕處理程序創建新TimerCounterTask並執行這個新TimerCounter()在停止按鈕處理器參數
  • 停止當前任務
  • timerText是用於顯示計時器的TextView
+0

@korivyansk:它可以工作,但我想從00:00開始顯示時間。 – Piyush 2011-02-14 05:38:19