为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Android中以指定的间隔运行可运行的线程?

如何在Android中以指定的间隔运行可运行的线程?

如何在Android中以指定的间隔运行可运行的线程?我开发了一个应用程序,可以在Android模拟器屏幕上以指定的间隔显示一些文本。我正在使用Handler班级,等级。下面是我的代码片段:handler = new Handler();Runnable r = new Runnable() {     public void run() {         tv.append("Hello World");                    }};handler.postDelayed(r, 1000);当我运行这个应用程序时,文本只显示一次。为什么?
查看完整描述

3 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

我认为可以改进Alex2k8的第一个解决方案,以便每秒钟更新一次。

1.原始代码:

public void run() {
    tv.append("Hello World");
    handler.postDelayed(this, 1000);}

2.分析

  • 在以上成本中,假设

    tv.append("Hello Word")

    成本

    T

    毫秒,显示后

    500

    时间延迟时间

    500*T

    毫秒
  • 长时间运行时会增加延迟时间。

3.解决办法

为了避免这种情况,只需更改postDelayed()的顺序,避免延迟:

public void run() {
    handler.postDelayed(this, 1000);
    tv.append("Hello World");}


查看完整回答
反对 回复 2019-06-20
?
动漫人物

TA贡献1815条经验 获得超10个赞

new Handler().postDelayed(new Runnable() {
    public void run() {
        // do something...              
    }}, 100);


查看完整回答
反对 回复 2019-06-20
  • 3 回答
  • 0 关注
  • 947 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信