Handler的基本概念
Handler提供了一种异步处理的机制。
存在两个队列,一个是把线程放进去的队列,另一个是消息队列。
Activity是一个线程,下载是另一个线程。
Handler基本使用方法
马上加入到消息队列中:post(Runnable对象引用),
从消息队列中移除:removeCallback(Runnable对象引用)
1.创建一个Handler对象
2.将要执行的操作写在线程对象的run方法中
3.在run方法内部,执行postDelayed(有两个参数)方法
4.在触发事件中调用通过Handler引用的post方法
Handler与线程的关系
默认情况Handler与调用它的Activity是处于同一个线程的。
编写线程程序:1.实现runnable接口,2.继承Thread这个类。这两种方法都得实现run方法但启动线程并不调用run方法而是调用线程start方法。如果直接调用run方法实际上没有真正启动一个线程,而是在当前线程中执行run方法。post(Runnable对象),这其实是直接执行run方法。
Bundle的用法
是一种数据存储工具
Bundle(String key, value).key只能是String类型,value可以是其他类型。
在新线程当中处理消息的方法
looper循环的从队列当中取得消息,当队列中没有消息的话,线程便会休眠。
时间: 2024-10-30 08:23:28