Handler(2)--主线程向自身消息队列发送消息
2016-09-19 15:27
375 查看
参考文章:Handler详解系列(二)–主线程向自身消息队列发送消息
该示例中在主线程中给主线程自己的消息队列发送消息.
* 步骤:
* 1 利用getMainLooper()实例化一个Handler
* 2 在主线程中发送消息.
*
* 正因为在初始化一个Handler时候使用的是主线程的Looper(即getMainLooper())
* 那么消息当然是发到了主线程的消息队列.认识到这一点是很重要的.
运行效果如下:
该示例中在主线程中给主线程自己的消息队列发送消息.
* 步骤:
* 1 利用getMainLooper()实例化一个Handler
* 2 在主线程中发送消息.
*
* 正因为在初始化一个Handler时候使用的是主线程的Looper(即getMainLooper())
* 那么消息当然是发到了主线程的消息队列.认识到这一点是很重要的.
public class MainActivity extends AppCompatActivity { private Button button; private TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button=(Button)findViewById(R.id.btn); textView=(TextView)findViewById(R.id.tvShow); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { HandlerTest handlerTest=new HandlerTest(getMainLooper()); Message message=new Message(); message.obj="哈哈哈"; handlerTest.sendMessage(message); } }); } private class HandlerTest extends Handler { public HandlerTest(Looper looper) { super(looper); } @Override public void handleMessage(Message msg) { super.handleMessage(msg); textView.setText("在主线程中,收到主线程自己的Handler发送的消息为:"+msg.obj); } } }
运行效果如下:
相关文章推荐
- Handler(3)--在子线程中主线程的 消息队列发送消息
- Android Handler 发送消息的线程安全问题
- 普通线程利用Handler 向队列发消息
- Android用Handler让主线程向子线程发送消息
- Android进程和线程 --消息队列模型 (Looper, MessageQueue, Handler) (1)
- 主线程有多个Handler, 子线程发送消息由哪个handler处理
- Android学习—— Handler 的消息发送,在新的线程处理消息
- Android 使用handler实现线程间发送消息 (主线程 与 子线程之间)、(子线程 与 子线程之间)
- Handler ,消息队列 和线程
- Handler从主线程向子线程发送消息
- handler底层是如何将消息从子线程发送到主线程
- Android:线程间通讯、Handler、Looper、IntentService、自定义消息队列
- C#线程类框架,支持消息队列,通过postmessage从UI线程发送消息到工作者线程
- java.lang.RuntimeException: 将消息发送到死的线程上处理程序的处理程序 (android.os.Handler)
- 安卓基础:Handler, Looper,消息队列,线程及主线程之间的关系
- 在任意线程给Handler发送的消息为什么会在创建Handler的那个线程被执行?
- Handler发送消息后消息队列的处理
- Runnable接口实现线程,Handler消息队列更新UI
- Android 使用handler实现线程间发送消息 (主线程 与 子线程之间)、(子线程 与 子线程之间)
- 主线程中有多个handler的情况,只会共用一个消息队列(看代码)