How to run a Runnable thread in Android?

来源:互联网 发布:java web开发流程 编辑:程序博客网 时间:2024/06/03 17:43

The simple fix to your example is:

 

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

handler
.postDelayed(r, 1000);

Or we can use normal thread for example (with original Runner):

Thread thread = new Thread()
{
   
@Override
   
public void run() {
       
try {
           
while(true) {
                sleep
(1000);
                handler
.post(r);
           
}
       
} catch (InterruptedException e) {
            e
.printStackTrace();
       
}
   
}
};

thread
.start();

You may consider your runnable object just as a command that can be sent to the message queue for execution, and handler as just a helper object used to send that command.

More details are here http://developer.android.com/reference/android/os/Handler.html