gpt4 book ai didi

android - 在android中创建一个简单的数字计时器

转载 作者:行者123 更新时间:2023-11-29 14:25:47 25 4
gpt4 key购买 nike

我基本上只是想跟踪应用程序启动时从 0:00 开始的秒数和分钟数,并将其显示在 TextView 中,执行此操作的最佳方法是什么?

最佳答案

当计时器启动一个非 UI 线程时,我宁愿不使用它来更新 TextView。在您的情况下, Timer 可以替换为 Handler 类。而且您还可以避免这个新的非 UI 线程的开销。 Here是一个例子:

private Handler mHandler = new Handler();

OnClickListener mStartListener = new OnClickListener()
{
public void onClick(View v)
{
if (mStartTime == 0L)
{
mStartTime = System.currentTimeMillis();
mHandler.removeCallbacks(mUpdateTimeTask);
mHandler.postDelayed(mUpdateTimeTask, 100);
}
}
};

.........

private Runnable mUpdateTimeTask = new Runnable()
{
public void run()
{
final long start = mStartTime;
long millis = SystemClock.uptimeMillis() - start;
int seconds = (int) (millis / 1000);
int minutes = seconds / 60;
seconds = seconds % 60;

if (seconds < 10)
{
mTimeLabel.setText("" + minutes + ":0" + seconds);
}
else
{
mTimeLabel.setText("" + minutes + ":" + seconds);
}

mHandler.postAtTime(this,start + (((minutes * 60) + seconds + 1) * 1000));
}
};

关于android - 在android中创建一个简单的数字计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4591149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com