2017-05-27 89 views
0

嗯,我正在嘗試爲我的應用程序創建一個CountDownTimer。我已經在網上搜索,但找不到解決我的問題的好方法。Android Studio如何在背景中使用CountDownTimer和TextView

此計時器應在用戶破解應用程序或切換到另一個應用程序後繼續運行。所以我需要一個服務類,我想。然後Timer應該連接到一個每秒刷新一次的TextView。它應該從30點到00點倒數。

任何幫助表示讚賞:d

+2

的可能的複製[如何在Android的服務運行CountDownTimer?](https://stackoverflow.com/questions/22496863/how-to-run-countdowntimer-in-a-service-in- Android) –

+0

這已經有一個答案在這裏:https://stackoverflow.com/questions/22496863/how-to-run-countdowntimer-in-a-service-in-android –

+0

非常感謝你Rishabh :)我已經找到那篇文章,但認爲是困惑,因爲我讀了一些關於服務類。 – Tester

回答

0

你可以使用它一個線程在服務

new Thread(new Runnable() { 
    public void run() { 
     //do stuff here 
      } 
     }); 
    } 
}).start(); 

或訪問thisthis獲取更多信息。

0

這裏你不需要任何類型的服務。 CountDownTimer類自動運行在不同的線程上,並在UI線程中提供回調。 CountDownTimer自己創建一個線程。

new CountDownTimer(30000, 1000) { 

    public void onTick(long millisUntilFinished) { 
     binding.nameTxt.setText("seconds remaining: " + millisUntilFinished/1000); 
     //here you can have your logic to set text to edittext 
     } 

    public void onFinish() { 
     binding.nameTxt.setText("done!"); 
     //here you can have your logic to set text to edittext when the timer is stopped. 
    } 
}.start(); 
+0

非常感謝:DI已經看過這個視頻https://www.youtube.com/watch?v=ZqqP69rJVmg但當我讀了一些關於Service類的後臺服務時,我感到困惑,因爲findViewById命令不起作用在服務中。再次感謝你:) – Tester

+0

嗨,再次。你能告訴我完整的服務類嗎? 「新的CountDownTimer」給出了一個錯誤..對不起,我在Service類中很新。以及如何將我的MainActivity的EditText與此服務連接起來?非常感謝你 :) – Tester

相關問題