我需要使用android中的线程每秒增加一个数字
Posted
技术标签:
【中文标题】我需要使用android中的线程每秒增加一个数字【英文标题】:I need to increment a number every second using threads in android 【发布时间】:2020-01-20 03:13:30 【问题描述】:这里我使用 Handler 来做,但它只会增加一个数字一次。我希望它增加数字,直到我使用 handler.removeCallbacksAndMessages(null); 停止它。
谁能指导我如何实现这一目标。我是安卓新手。
Handler handler;
handler = new Handler();
handler.postDelayed(new Runnable()
@Override
public void run()
count++;
, 1000);
【问题讨论】:
如果您退出应用程序,是否仍要运行该进程? 不,我在退出应用时不需要它 查看***.com/questions/29277367/… 【参考方案1】:定义一个线程并启动它。
Thread counterThread=new Thread(()->
try
while(true)
counter++;
Thread.sleep(1000);
catch (Exception e)
);
counterThread.start();
而当你想停止这个线程调用counterThread.interrupt();
【讨论】:
【参考方案2】:试试这个
Handler handler;
handler = new Handler();
handler.postDelayed(new Runnable()
@Override
public void run()
count++;
handler.postDelayed(this, 1000);
, 1000);
【讨论】:
【参考方案3】:你可以
每秒重新运行可运行对象 使用 AlarmManager。我建议您查看this link,以更深入地了解如何实现延迟发布或警报管理器以每 X 秒重复一次任务的多种方式。
编辑:我建议您在 onPause 方法中停止处理程序。
【讨论】:
以上是关于我需要使用android中的线程每秒增加一个数字的主要内容,如果未能解决你的问题,请参考以下文章