Hello Android - AsyncTask异步操作
2011-09-13 15:33
363 查看
AsyncTask能够适当地、简单地用于 UI线程。这个类准许执行后台操作,让那些没有熟练操作线程的操作者在 UI线程上发布结果。
异步任务的定义是一个在后台线程上运行,其结果是在 UI线程上发表的计算。、
异步任务被定义成三种一般类型: Params, Progress和 Result;
四步: begin , doInBackground , processProgress和end.
自己写的练习
在网上找到一篇博客:http://lichen.blog.51cto.com/697816/486868,写的不错
异步任务的定义是一个在后台线程上运行,其结果是在 UI线程上发表的计算。、
异步任务被定义成三种一般类型: Params, Progress和 Result;
四步: begin , doInBackground , processProgress和end.
自己写的练习
import android.app.Activity; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; public class MainActivity extends Activity{ protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.main); //AsyncTask.execute()要在主线程里调用 ,新建了一堆线程,写这么多是为了便于查看效果 new AsyncLoader().execute("aaaa"); new AsyncLoader().execute("bbbb"); new AsyncLoader().execute("cccc"); new AsyncLoader().execute("dddd"); new AsyncLoader().execute("eeee"); new AsyncLoader().execute("ffff"); } } //AsyncTask class AsyncLoader extends AsyncTask<String, Integer, Integer>{ @Override protected Integer doInBackground(String... arg0) { Log.i("AsyncLoader", "doInBackground:"+arg0[0]); for (int i = 0; i < 2; i++) { publishProgress(i);//发送更新进度消息 try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } return 0; } @Override protected void onCancelled() { Log.i("AsyncLoader", "onCancelled"); super.onCancelled(); } @Override protected void onPostExecute(Integer result) { Log.i("AsyncLoader", "onPostExecute:result="+result); super.onPostExecute(result); } @Override protected void onProgressUpdate(Integer... values) { //打印进度 Log.i("AsyncLoader", "progress:"+ values[0]); super.onProgressUpdate(values); } } }
在网上找到一篇博客:http://lichen.blog.51cto.com/697816/486868,写的不错
相关文章推荐
- 第5章、解析Hello,world!知其然,更要知其所以然(从零开始学Android)
- 【android NDK JNI】android-ndk-r9d+adt-bundle-windows环境搭建-Hello-jni案例说明
- Hello Android - Android 对话框大全
- 5. Android Basic QuickStart Hello, View
- Hello Android 1: Android 下载和安装
- QT for Android HelloWorld.apk!耶
- Android中使用ormlite实现持久化--HelloOrmLite
- Cocos2d-x--编译第一个Android程序HelloCocos2dx
- Android中级篇之百度地图SDK v3.5.0-Hello BaiduMap[图解第一次运行百度地图]
- Hello Android - File文件操作
- Hello Android – 迈出android开发第一步
- HelloAndroidUpDate
- Android实例Hello&nbsp;Android编写方法
- 【转】Create Hello-JNI with Android Studio
- 一个hello程序的android内核模块编译方法及在模拟器中进行测试结论
- 第5章、解析Hello,world!知其然,更要知其所以然(从零开始学Android)
- Android学习七---Hello OpenCV samples
- helloWorld does not specify a android.test.InstrumentationTestRunner instrumentation or does not dec
- 第3章、第一个“Hello,world!”之Android App(从零开始学Android)
- HelloAndroid继承Activity,觉得它和applet非常相似