handler 进行主线程与子线程之间的信息传递
来源:互联网 发布:在线网络理财产品排名 编辑:程序博客网 时间:2024/04/30 17:14
子线程与主线程之间进行消息的传递:这里应用了handlerThread这个方式进行新的子线程的启动,因为在启动子线程的时候,想要新建一个Loop对象则要调用其相应的方法,这个方法是Google提供的,为我们自动开启了一个Looper,并且避免了在子线程中的NULL exception :
public class MainActivity extends Activity { private TextView textView; Handler mainHandler = new Handler(){ @Override public void handleMessage(Message msg) { Message message = new Message(); Log.e("test"," main Thread"); <span style="color:#ff0000;">sonHandler.sendMessageDelayed(message, 1000);//这里是子线程的handler对象进行调用,并且实现线程的传递</span> } }; Handler sonHandler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView) findViewById(R.id.hello); textView.setOnClickListener(new View.OnClickListener() {//为text添加点击事件,目的是启动主线程的message的调用 @Override public void onClick(View v) { mainHandler.handleMessage(new Message()); } }); HandlerThread sonThread = new HandlerThread("sonThread"); sonThread.start(); sonHandler = new Handler(sonThread.getLooper()){ @Override public void handleMessage(Message msg) { Log.e("test"," son Thread"); Message message = new Message(); <span style="color:#ff0000;">mainHandler.sendMessageDelayed(message,1000);//主要是这里,主线程的handler对象调用send方法进行方法的传递</span> } };
结果:
这样互相交替的出现,就是子线程收到数据后给主线程一个返回,主线程收到后,给子线程一个反馈,这样就实现了互相的数据传递
0 0
- handler 进行主线程与子线程之间的信息传递
- handler 主线程向子线程中进行信息传递
- handler 主线程与子线程之间的通信
- 使用Handler实现主线程与子线程之间互相传递消息
- 子线程与主线程通过Handler进行通信
- Android 主线程与子线程之间消息传递
- Android学习笔记--Handler主线程与子线程之间的通信
- android 主线程和子线程之间的消息传递
- android 主线程和子线程之间的消息传递
- android 主线程和子线程之间的消息传递
- android 主线程和子线程之间的消息传递
- android 主线程和子线程之间的消息传递
- Android使用Handler实现子线程与子线程、主线程之间通信
- 主线程与子线程之间通讯, 子线程与子线程之间的通讯
- 利用Handler在主线程与子线程之间互发消息,handler详解
- 线程中主线程与子线程之间的关系
- ArrayList 和数组之间的一些转换 Handler的主线程与子线程通信 内部类的使用
- ArrayList和数组之间的一些转换 Handler的主线程与子线程通信 内部类的使用
- StringBuffer与StringBuilder的区别
- js自定义对象
- Linux中文件隐藏属性chattr,lsattr
- 约瑟夫环
- 使用X-UA-Compatible来设置IE浏览器兼容模式
- handler 进行主线程与子线程之间的信息传递
- c#----泛型(一)
- maven指定依赖打成一个jar包
- struts2的result-type详解
- LINQ 的使用
- vmware workstation11下安装ubuntu14.04
- java汉字转拼音
- 【leetcode】Majority Element
- 第4周项目3-用对象数组操作长方体类