显示“剩余时间”直到警报开始 [英] Show "left time" until the alarm start
本文介绍了显示“剩余时间”直到警报开始的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在Android中创建警报(AlarmManager)。
警报必须显示到完成为止的剩余时间。
I whould like to create a alarm (AlarmManager) in Android. The alarm must show the left time until its finish.
因此,用户单击在晚上11点设置警报,然后在TextView中看到警报xy小时/分钟/秒。
So the user click on "set alarm at 11 pm" and see in a TextView "alarm in xy hours/minuts/seconds".
我该如何实现?
谢谢。
推荐答案
尝试一下
Calendar calendar = Calendar.getInstance();
Long preTime = calendar.getTimeInMillis();
// set alarm after 5 minute
calendar.add(Calendar.MINUTE, 5);
Long postTime = calendar.getTimeInMillis();
Long delay = postTime - preTime;
AlarmManager manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
manager.set(AlarmManager.RTC_WAKEUP, postTime, null);
CountDownTimer timer = new CountDownTimer(delay, 1) {
@Override
public void onTick(long millisUntilFinished) {
final int seconds = (int) (millisUntilFinished / 1000) % 60;
final int minutes = (int) ((millisUntilFinished / (1000 * 60)) % 60);
runOnUiThread(new Runnable() {
@Override
public void run() {
text.setText("minute " + minutes + " Second " + seconds);
}
});
}
@Override
public void onFinish() {
// TODO Auto-generated method stub
}
};
timer.start();
这篇关于显示“剩余时间”直到警报开始的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文