Android 线程thread的两种实现方法(必看)

这篇文章中有三点需要提前说明一下,

一:在android中有两种实现线程thread的方法:

一种是,扩展java.lang.Thread类

另一种是,实现Runnable接口

二:Thread类代表线程类,它的两个最主要的方法是:

run()——包含线程运行时所执行的代码

Start()——用于启动线程

三: Handler 机制,它是Runnable和Activity交互的桥梁,在run方法中发送Message,在Handler里,通过不同的Message执行不同的任务。

下面分别给出两种线程的实现方法,其一,扩展java.lang.Thread类,也就是把run()方法写到线程里面:

package com.my; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class Demo_For_Copy extends Activity {   public Button button;      public Handler mHandler=new Handler()   {     public void handleMessage(Message msg)     {       switch(msg.what)       {       case 1:         button.setText(R.string.text2);         break;       default:         break;          }       super.handleMessage(msg);     }   };      /** Called when the activity is first created. */   @Override   public void onCreate(Bundle savedInstanceState)   {     super.onCreate(savedInstanceState);     setContentView(R.layout.main);     button=(Button)findViewById(R.id.button);      Thread thread=new Thread(new Runnable()     {       @Override       public void run()       {         Log.e("1111", "111111111");         // TODO Auto-generated method stub         Message message=new Message();         message.what=1;         mHandler.sendMessage(message);       }     });     thread.start();   } } 

其二,实现Runnable接口,让类实现Runnable接口,然后把run方法单独提出来:

package com.my; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.LinearLayout; public class Title_Change_Demo extends Activity implements Runnable {   public Button button;   public LinearLayout my_layout;      public Handler mHandler=new Handler()   {     public void handleMessage(Message msg)     {       switch(msg.what)       {       case 1:         button.setText(R.string.text2);         break;       default:         break;            }       my_layout.invalidate();       super.handleMessage(msg);     }   };      /** Called when the activity is first created. */   @Override   public void onCreate(Bundle savedInstanceState)   {     super.onCreate(savedInstanceState);     setContentView(R.layout.main);          button=(Button)findViewById(R.id.button);     my_layout=(LinearLayout)findViewById(R.id.my_layout);          Thread thread=new Thread(this);     thread.start();   }      @Override   public void run()   {     Log.e("ok", "111111111");     // TODO Auto-generated method stub     Message message=new Message();     message.what=1;     mHandler.sendMessage(message);   } } 

以上这篇Android 线程thread的两种实现方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

每一天都是一个阶梯,是向既定目标迈进的新的一步。

Android 线程thread的两种实现方法(必看)

相关文章:

你感兴趣的文章:

标签云: