Handler和AsyncTask

Android消息机制:

Message,handler,looper类的使用及消息的传递

主线程和子线程之间的消息传递

—————————————————

——>     Message  message  message——>  looper

—↑—————————————— ↓——

<————Handler<-————    ↓

Looper提供消息队列的集合,消息通过handler增加和取出,handler的操作对象就是主(UI Thread),子线程

Android.os.message:消息封装,

Public int what:定义message属于何种操作

Public object obj:定义传递的数据

Public in arg1:传递整形数据

Public handler gettarget():取得操作此消息的handler对象

Android.os.handler:处理消息的工具类。韩有很多方法

Public final boolean sendmessage(Message msg)

Android:os.looper

子线程不能更新界面

Handler:发送消息,postDelay将事务交给主线程

mhandler.postDelayed(new runnable()){
public void run(){}

},500);

Progressbar:进度条

Setprogress();设置进度条

Setsecondaryprogress();

Progressbarstylelarge:大圆形进度条

Progressbarstylesmall:小圆形进度条

android.os.AsyncTask:非同步任务,完成非阻塞的操作类,后台更新ui

Android.os.AsyncTask<Params,Progress,Result>

Params:启动参数 String

Progress:执行任务百分比 integer

Result:执行完毕后的提示

除了background都是在主线程中执行 String

String...:可变参数

时间: 2024-10-12 21:12:42

Handler和AsyncTask的相关文章

Handler与AsyncTask比较

AsyncTask实现的原理和适用的优缺点 AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程. 使用的优点: 简单,快捷 过程可控 使用的缺点: 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来. Handler异步实现的原理和适用的优缺点 在Handler 异步实现时,涉及到 Handler, Looper, Message,Th

Handler和AsyncTask的区别

Handler和AsyncTask的区别 1.Handler 实现原理:Handler实现时,包含Handler.Thread.Message.Looper对象, 主线程启动子线程(Thread).子线程运行生成Message-Looper获取Message并传给 Handler依次获取Looper的Message,并进行UI更新. 2)特点:Handler可以分发Message对象和Runnable对象到主线程中,每个Handler实例,都会绑定到创建他的线程中,安排消息或Runnable 在

android线程之 Handler与AsyncTask的应用

做应用程序的开发的时候,我们程序员更多的关心的是线程. 一个android应用程序开启后,默认开启一个主线程(大部分都和UI相关,所以又叫UI 线程).在UI线程上面运行的Avtivity组件,Service组件,BroadcastReceiver组件. 用户操作主线程时,需要注意不允许在UI线程中做耗时的操作.比如:复杂的逻辑计算,休眠,联网,下载数据等都是耗时的操作.如果在UI主线程中做耗时的操作,一旦超过5秒,应用程序抛出异常,会报一个ANR(Application not respond

多线程异步机制Handler以及AsyncTask

Android当中多线程的写法跟JAVA当中相差不了太多,只需要新建一个类继承自Thread类即可.然后重写父类的run方法.并在里面写耗时逻辑即可 class MyThread extends Thread { @Override public void run() { // 处理具体的逻辑 } } 启动线程 new MyThread().start(); 当然也可以像下面这样写,这样的写法更加适合,因为使用继承的方式耦合性有点高 class MyThread implements Runna

Activity UI Handler ProgressBar AsyncTask

package io.vov.vitamio.activity; import android.app.Activity; import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.content.res.Resources; import android.os.AsyncTask; import android.os.Bundl

Android中的Handler和AsyncTask

1.Handler简介 Handler在android里负责发送和处理消息.它的主要用途: 1)按计划发送消息或执行某个Runnanble(使用POST方法),类似定时器: 2)从其他线程中发送来的消息放入消息队列中,避免线程冲突(常见于更新UI线程): 默认情况下,Handler接受的是当前线程下的消息循环实例(使用Handler(Looper looper).Handler(Looper looper, Handler.Callback callback)可以指定线程),同时一个消息队列(M

AsyncTask和Handler对比

AsyncTask和Handler对比 1 ) AsyncTask实现的原理,和适用的优缺点 AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程. 使用的优点: l  简单,快捷 l  过程可控 使用的缺点: l  在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来. 2 )Handler异步实现的原理和适用的优缺点 在Handler

Android之——AsyncTask和Handler对照

转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46952835 AsyncTask和Handler对照 1 ) AsyncTask实现的原理,和适用的优缺点 AsyncTask,是android提供的轻量级的异步类,能够直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步运行的程度(能够通过接口实现UI进度更新),最后反馈运行的结果给UI主线程. 使用的长处: l  简单,快捷 l  过程可控 使用的缺点: l

Android 之异步任务(AsyncTask,Handler,Message,looper)

AsyncTask: 3个类型(Params,Progress和Result),4个步骤(onPreExecute(),doInBackground(Params…),onProgressUpdate(Progress…), onPostExecute(Result) ) Android的AsyncTask比Handler更轻量级一些,适用于简单的异步处理. 首先明确Android之所以有Handler和AsyncTask,都是为了不阻塞主线程(UI线程),且UI的更新只能在主线程中完成,因此异