嗨,我是Android和Android的新手java lang。 我有这段代码告诉你你玩了多久。 代码工作正常,除非屏幕关闭或用户按下电源按钮(睡眠模式)时它停止工作。 即使在屏幕关闭或处于睡眠模式时,任何人都可以建议一个简单的代码来保持计时。感谢...
public class test extends Activity
{
Handler mHandler = new Handler();
Runnable mUpdateTime = new Runnable()
{
public void run()
{
sec += 1;
if(sec >= 60)
{
sec = 0;
min += 1;
if (min >= 60)
{
min = 0;
hour += 1;
}
}
playtime.setText(String.format("%02d:%02d:%02d", hour, min, sec));
mHandler.postDelayed(mUpdateTime, 1000);
}
};
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mHandler.postDelayed(mUpdateTime, 1000);
}
}
答案 0 :(得分:0)
我建议不计算时间,而是设置开始时间,然后从当前减去该时间以获得经过的时间。
答案 1 :(得分:0)
Chronometer widget可能会解决您的问题。
我会建议您不要在睡眠模式下计算任何解决方案,因为这样会影响用户的电池续航时间。