AsyncTack

本文介绍了Android中的AsyncTask,它是一个轻量级的异步类,简化了异步操作。文章详细阐述了AsyncTask的使用步骤,包括继承、泛型参数、重写关键方法,并通过倒计时和进度条实例展示了其用法。还对比了Execute()和executeOnExecutor()的执行方式,以及讨论了AsyncTask与Handler在处理异步消息上的优劣。
摘要由CSDN通过智能技术生成

一、什么是AsyncTack

AsyncTack是Android提供的轻量(实现代码量少)的异步类,降低了异步通信的开发难度,直接继承于Object类,位于android.os包中,可以忽略Looper、MessageQueue、Handler等复杂对象,更便捷的完成异步耗时操作。(在调用时不要启动子线程,android中内置子线程操作)

二、如何使用AsyncTack

1、新建一个内部类继承AsyncTack
2、定义AsyncTack的三种泛型参数(任何类型)
3、重写dolnBackground抽象方法(在子线程中,不能进行更新UI)
4、重写onPreExeccute方法(进行耗时操作前更新UI,可初始化控件)
5、重写onProgressUpdate方法
6、重写onPostExeccute(进行耗时操作后更新UI)
7、在需要启动的地方调用execcute方法(实现AsyncTack任务)

三、使用AsyncTack做倒计时(实例)

代码展示:

//在xml布局文件中
 <TextView
        android:id="@+id/main2_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="倒计时"
        android:textSize="32sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <EditText
        android:id="@+id/main2_edit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="输入数字"<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值