http://blog.youkuaiyun.com/Zengyangtech/archive/2010/07/29/5773090.aspx
在主activity中定一个Handler的成员,然后实现handlemassage函数,创建线程后在runable的run函数里new一个message,然后指定message对象的what成员,这个是指定message的一个id,然后在run中调用Handler的成员,使用其成员方法中的sendmessage(好像是叫这个),handlemassage函数中参数有个massage,根据该message参数中的what来对你发送message时指定的what来处理UI的功能
- privateHandlermHandler=newHandler(){
- publicvoidhandleMessage(Messagemsg){
- switch(msg.what){
- caseID_USER:
- //获取传递的数据
- //Bundledata=msg.getData();
- //intcount=data.getInt("COUNT");
- //处理UI更新等操作
- }
- };
- };
主activity中创建线程
- MyThreadthread=newMyThread();
- mThread=newThread(thread);
- mThread.start();
MyThread
- classMyThreadimplementsRunnable{
- publicvoidrun(){
- //执行数据操作,不涉及到UI
- Messagemsg=newMessage();
- msg.what=ID_USER;
- //这三句可以传递数据
- //Bundledata=newBundle();
- //data.putInt("COUNT",100);//COUNT是标签,handleMessage中使用
- //msg.setData(data);
- mHandler.sendMessage(msg);//向Handler发送消息,更新UI
- }
本文介绍了一种在Android应用中更新用户界面(UI)的有效方法:通过Handler机制实现主线程与子线程之间的通信。具体步骤包括在Activity中定义Handler并覆盖handleMessage方法,以及在子线程中发送带有特定标识符的Message到Handler。
1351

被折叠的 条评论
为什么被折叠?



