gpt4 book ai didi

android - postAtTime 不触发

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:05 25 4
gpt4 key购买 nike

我正在尝试制作一个每分钟都会更改 UI 的应用程序,但我在使用 postAtTime 函数时遇到了很多困难,因为我无法触发它。我已经用 postDelay 尝试过它并且它有效,但 postAtTime 应该给我更多的精度。

我获取当前时间并设置日历,然后在日期中添加一分钟并调用 postAtTime,但它没有触发。让我们看看你是否能帮助我。

   private Runnable showMinute = new Runnable() {
public void run() {
calendar = Calendar.getInstance();
minute = calendar.get(Calendar.MINUTE);
minute = minute % 10;

switch (minute){
case 0: numero.setImageResource(R.drawable.b0);
break;
case 1: numero.setImageResource(R.drawable.b1);
break;
case 2: numero.setImageResource(R.drawable.b2);
break;
case 3: numero.setImageResource(R.drawable.b3);
break;
case 4: numero.setImageResource(R.drawable.b4);
break;
case 5: numero.setImageResource(R.drawable.b5);
break;
case 6: numero.setImageResource(R.drawable.b6);
break;
case 7: numero.setImageResource(R.drawable.b7);
break;
case 8: numero.setImageResource(R.drawable.b8);
break;
case 9: numero.setImageResource(R.drawable.b9);
break;
default:
break;
}


handler.removeCallbacks(mostrarHora);
calendar.add(Calendar.MINUTE, 1);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
handler.postAtTime(showMinute, calendar.getTimeInMillis());
}
};

最佳答案

您正在使用绝对时间(来自 Calendar 类)。 handler.postAtTime 时间格式是自启动以来的 ms 量。

您应该使用 SystemClock.uptimeMillis() 进行计算。

关于android - postAtTime 不触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11053412/

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