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

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

我开发了一个应用程序,可以在Android模拟器屏幕上以指定的间隔显示一些文本。我正在使用Handler班级,等级。下面是我的代码片段:

handler = new Handler();Runnable r = new Runnable() {
    public void run() {
        tv.append("Hello World");               
    }};handler.postDelayed(r, 1000);

当我运行这个应用程序时,文本只显示一次。为什么?


缥缈止盈
浏览 951回答 3
3回答

幕布斯6054654

我认为可以改进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");}

动漫人物

new Handler().postDelayed(new Runnable() {     public void run() {         // do something...                   }}, 100);
打开App,查看更多内容
随时随地看视频慕课网APP