2011-02-10 18 views
0

我有一個textView值爲2:00,表示2分00秒。從字符串02:00分鐘開始倒計時Android

我有一個秒錶功能,將數數。我已經將他們整合到工作中。

我想要做的就是給符合我會告訴

1:59 
1:58 
1:57 

,並依此類推,直至達到每0:00秒。

的幫助,我需要的是TextView的文本格式化時間,比對每走秒 - 1

在C#中我可能會使用2:00.addseconds(-1)2:00是代表重新格式化TextView中。

回答

0

我認爲你可以使用像這樣的指令來獲取開始時間:

long start=System.currentTimeMillis(); 

,那麼你可以創建另一個變量,您將檢查到一個while循環,例如:

long now=System.currentTimeMillis(); 

while((now-start)<120000){ 

    now=System.currentTimeMillis(); 
    if((now-start)%1000==0){ 
    //update textview 
    }} 

這應該工作,讓我知道如果你有問題

+0

這是不是會掛在cpu,而它坐在`while`循環? – 2011-02-10 17:54:29

0

作爲一個int在某處保持跟蹤時間。

int mSeconds = 120; // 120 seconds is 2 minutes 

在你的調度器/定時器

mSeconds -= 1; // run every second 

然後在你的文字寫作環

String minutes = Integer.toString(mSeconds/60); 
String seconds = Integer.toString(mSeconds % 60); 
0

嗨感謝名單 的詮釋mSecond代碼所做的代碼真正的好

的我現在得到的問題是 倒計時是13秒。如果我從零點開始,並計數那一個我得到的下降 2:13 at 2:00 你可以說他們不同步:(

我需要設置刷新率att 1000毫秒 我認爲,這是因爲它錯過,因爲高刷新率的在一段時間 第二每隔一段時間。

原單在100毫秒設定的刷新速率。 從來就tryied一對夫婦的設置,但不工作

我使用StopWatch類來計算timeelapsed。