教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

高级程序员修炼之道-Android培训系列课程之Thread

来源:网络收集 时间:2026-09-06
导读: 学软件,到拓胜浸入式Java培训!全国唯一采用软件工厂模式培训国际化软件人才的IT培训机构,在拓胜软 android android andriod Handler Looper Handler Android Looper android UI Handle Handle Handle Looper UI Looper UI UI UI Android Looper android UI H

学软件,到拓胜浸入式Java培训!全国唯一采用软件工厂模式培训国际化软件人才的IT培训机构,在拓胜软

android

android andriod Handler Looper Handler

Android Looper android UI Handle Handle Handle Looper UI Looper

UI UI UI

Android Looper android UI Handler Handler Handler Looper UI Looper

UI UI UI

Handler Handler

1

2 class ChildThread extends Thread { public void run() { /* * handler Looper. */ Looper.prepare(); /* * handler * */ mChildHandler = new Handler() { public void handleMessage(Message msg) { /* * Do some expensive operations there.

*/

1/8

学软件,到拓胜浸入式Java培训!全国唯一采用软件工厂模式培训国际化软件人才的IT培训机构,在拓胜软

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9 } }; /* * */ Looper.loop(); } }

Handler handleMessage(…)

quit()

mChildHandler.getLooper().quit

();

2/8

学软件,到拓胜浸入式Java培训!全国唯一采用软件工厂模式培训国际化软件人才的IT培训机构,在拓胜软

1

2

3

4

5

6

7

8

9

1

1

1

1

2

1

3

1

4

1

5

1

6

1

7

1

8 /** * * @author allin.dev * * */ public class MainThread extends Activity { private static final String TAG = "MainThread"; private Handler mMainHandler, mChildHandler; private TextView info; private Button msgBtn; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(yout.main); info = (TextView) findViewById(); msgBtn = (Button) findViewById(R.id.msgBtn); mMainHandler = new Handler() { @Override public void handleMessage(Message msg) { Log.i(TAG, "Got an incoming message from the child thread - " + (String) msg.obj); // info.setText((String) msg.obj); } }; new ChildThread().start();

3/8

学软件,到拓胜浸入式Java培训!全国唯一采用软件工厂模式培训国际化软件人才的IT培训机构,在拓胜软

9

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9 msgBtn.setOnClickListener(new OnClickListener() { @Override 2public void onClick(View v) { if (mChildHandler != null) { 2// Message childMsg = mChildHandler.obtainMessage(); 2childMsg.obj = mMainHandler.getLooper().getThread().getName() + " says Hello"; mChildHandler.sendMessage(childMsg); 2Log.i(TAG, "Send a message to the child thread - " + (String)childMsg.obj); } 2} }); 2} public void onDestroy() { 2 super.onDestroy(); Log.i(TAG, "Stop looping the child thread's message queue"); 2mChildHandler.getLooper().quit(); } 2class ChildThread extends Thread { private static final String CHILD_TAG = "ChildThread"; 2public void run() { this.setName("ChildThread"); 3// Handler Looper.prepare(); 3mChildHandler = new Handler() { @Override 3public void handleMessage(Message msg) { Log.i(CHILD_TAG, "Got an incoming message from the main thread - " + 3(String)msg.obj); try { 3// sleep(100); 3Message toMain = mMainHandler.obtainMessage(); toMain.obj = "This is " + this.getLooper().getThread().getName() + 3". Did you send me \"" + (String)msg.obj + "\"?"; mMainHandler.sendMessage(toMain); 3Log.i(CHILD_TAG, "Send a message to the main thread - " + (String)toMain.obj); } catch (InterruptedException e) { 3// TODO Auto-generated catch block e.printStackTrace(); 3} }

4}; 1

4/8

学软件,到拓胜浸入式Java培训!全国唯一采用软件工厂模式培训国际化软件人才的IT培训机构,在拓胜软

1

2

3

4

4

5

< …… 此处隐藏:1462字,全部文档内容请下载后查看。喜欢就下载吧 ……
高级程序员修炼之道-Android培训系列课程之Thread.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/280042.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)