Android多线程

基本用法:

1、创建一个类继承Thread,并重run()。

2、实现Runnable接口

 

Android异步消息处理

基本用法:

1、主线程中创建一个Handler对象,并重写handleMessage(),在handleMessage中进行UI操作

2、在点击事件中创建一个Message对象,并指定want字段,调用sendMessage()发送消息

3、这样Handler会通过handleMessage获取发送的消息,然后进行处理。

 

Android异步消息处理机制:

组成:Message、Handler、MessageQueue和Looper。

流程:1、主线程中创建Handler对象,并重写handlerMessage()

   2、子线程中创建Message对象,并通过sendMessage()发送消息

     3、消息存入到MessageQueue队列中等待处理

   4、Looper从MessageQueue中取出Messgae,并分发回Handler的handleMessage()中

   5、在handlerMessage()中更新UI

 

AsyncTask

1、创建一个类继承AsyncTask,并制定3个泛型参数:Params、Progress、Result

  class DownloadTask extends AsyncTask<Void,Integer,Boolean>{...}

2、重写onPreExecute()界面初始化、doInBackground()处理耗时操作、onProgressUpdate(Progress...)进行UI操作、onPostExecute(Result)利用返回结果进行UI操作

 

  DoInBackground中不可进行UI操作,若要更新UI则可调用publishProgress(Progress....)

posted @ 2017-02-21 22:05  yl007  阅读(93)  评论(0编辑  收藏  举报