我有一个textView,其值为2:00,代表2分00秒。
我有一个可以计算的秒表功能。我把它们整合到了工作上来。
我要做的是每过一秒就会显示
1:59
1:58
1:57
等等,直到0:00。
我需要的帮助是将textview文本重新格式化为时间而不是每一秒钟 - 1
在C#中,我可能会使用2:00.addseconds(-1)2:00代表重新格式化的textview。
答案 0 :(得分:0)
我认为您可以使用这样的指令来获取开始时间:
long start=System.currentTimeMillis();
然后你可以创建另一个你将检查到while循环的变量,例如:
long now=System.currentTimeMillis();
while((now-start)<120000){
now=System.currentTimeMillis();
if((now-start)%1000==0){
//update textview
}}
这应该有用,如果你有问题,请告诉我
答案 1 :(得分:0)
在某个地方跟踪时间。
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);
答案 2 :(得分:0)
你好 Int mSecond代码使代码真正好了
我现在得到的问题是 倒计时是13秒。如果我从0:00开始计算那个,我就得到了倒计时器 凌晨2点13分 你可以说他们没有同步:(
我需要将刷新率设置为1000毫秒 我想这是因为它偶尔错过了一秒钟 因为高刷新率。
Orginal设置为100毫秒的刷新率。 我尝试了几种设置,但没有工作
我正在使用StopWatch类来计算时间。