日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 线程 thread 两种实现方法!

發布時間:2025/3/15 Android 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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); } }??

轉載于:https://www.cnblogs.com/boyupeng/archive/2011/02/25/2028562.html

總結

以上是生活随笔為你收集整理的Android 线程 thread 两种实现方法!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。