Android消息通信机制(子线程向主线程通信).txt
来源:互联网 发布:arp ip mac arpa 编辑:程序博客网 时间:2024/04/28 01:34
步骤:
1、实例化MainAcvitity中相关控件,并给启动子线程的控件添加点击事件
2、创建子线程内部类,用于发送信息
3、创建Handler类处理消息,将消息展示到acvitity中的TextView中
public class MainActivity extends AppCompatActivity { private Button btn_send; private TextView tv_content; private MyHandler handler=null; public static final int WHAT=1; private MyThread thread=null;①: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if(handler==null){ handler=new MyHandler(); } btn_send= (Button) findViewById(R.id.btn_send); tv_content= (TextView) findViewById(R.id.tv_content); btn_send.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //点击发送按钮启动子线程,接收消息 if(thread==null){ thread=new MyThread(); thread.start(); } } }); } /** * ②创建子线程内部类,用于发送信息 */ class MyThread extends Thread{ //重写run方法,向主线程发送消息 @Override public void run() { super.run(); Message message=handler.obtainMessage(WHAT,"子线程发送消息");//获得Message对象 //发送消息 handler.sendMessage(message); } } /** * ③创建Handler类处理消息,将消息展示到acvitity中的TextView中 */ class MyHandler extends Handler{ //重写handleMessagen方法,并置于主线程中(在acvitity创建时候实例化) @Override public void handleMessage(Message msg) { super.handleMessage(msg); //根据Message的操作类型不同处理数据 switch (msg.what){ case WHAT: //拿到消息内容并处理 String content=msg.obj.toString(); tv_content.setText(content); break; } } }
0 0
- Android消息通信机制(子线程向主线程通信).txt
- Android消息通信机制(主线程发消息到子线程)
- Android子线程与主线程通信
- android 主线程与子线程通信
- Android主线程、子线程通信(Thread+handler)
- Android主线程、子线程通信(Thread+handler)
- Android主线程、子线程通信(Thread+handler)
- Android主线程、子线程通信(Thread+handler)
- Android主线程、子线程通信(Thread+handler)
- Android线程间通信二主线程发消息给子线程
- 【Android】从主线程向子线程发消息
- android主线程向子线程发送消息
- Android主线程向子线程发送消息
- Android:主线程如何向子线程发送消息
- Android:子线程向UI主线程发送消息
- Android子线程向主线程发送消息实现
- android 子线程向主线程发送消息
- Android子线程主线程之间的通信
- 一个简单android的全选,单选demo
- vue2.0父子组件通信(慕课网)
- iOS 加载、滑动翻阅大量图片解决方案详解
- 安装J2EE的SDK报错:could not find the required version of the Java(TM)2 Runtime Environment in '(null)'的解决
- Android网络请求(HTTP)
- Android消息通信机制(子线程向主线程通信).txt
- a.面向对象编程思想(封装继承多态接口)
- PCL点云库学习记录
- shell 编程记录
- 【深度学习系列4】深度学习及并行化实现概述
- Kafka Eagle 源码解读
- C# 获取文件名和扩展名
- 存储过程与SQL语句对比
- Battery Charging Specification 1.2 中文详解