AsyncTask
来源:互联网 发布:交易圣经知乎 编辑:程序博客网 时间:2024/05/22 03:34
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.SystemClock;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ProgressBar;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView tv;
ProgressBar pb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.tv);
pb = (ProgressBar) findViewById(R.id.pb);
pb.setMax(3);
new MyAsyncTask().execute("");
// 异步任务
// AsyncTask 抽象类
// <Params, Progress, Result>
new AsyncTask<String, Integer, String>() {
//是一个线程方法 处理耗时操作
@Override
protected String doInBackground(String... params) {
Log.i("==============", params[0]);
Log.i("==============", params[1]);
Log.i("==============", params[2]);
String result = "";
for (int i = 0; i < params.length; i++) {
SystemClock.sleep(1000);
publishProgress(i+1);
result += params[i];
}
return result;
}
//当doInBackground return以后执行
//主线程方法 可以更新UI
@Override
protected void onPostExecute(String result) {
tv.setText(result);
super.onPostExecute(result);
}
//在doInBackground 执行之前调用的方法 做一些数据的初始化工作
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
}
//onProgressUpdate可是根据需求来调用 当调用了publishProgress(values)方法的时候 该方法就会被调用
//主线程方法 可以更新UI
@Override
protected void onProgressUpdate(Integer... values) {
pb.setProgress(values[0]);
super.onProgressUpdate(values);
}
}.execute("a","b","c");
}
class MyAsyncTask extends AsyncTask<String, Integer, String>{
@Override
protected String doInBackground(String... params) {
// TODO Auto-generated method stub
return null;
}
}
}
阅读全文
0 0
- AsyncTask
- ASyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- AsyncTask
- Linux功耗管理(6)_Generic PM之Suspend功能
- Count the string 【hdu-3336】【KMP】
- MySQL SELECT执行顺序
- jquery的ajax获取php文件
- 遇到xml文件不编译,需要在pom.xml文件中配置
- AsyncTask
- table与div互相嵌套注意
- How Many Tables
- 学生选课统计练习java
- UI自动化体系建设的创新实践
- 404,500等HTTP状态码表示的含义
- Oracle学前班
- Linux功耗管理(7)_Wakeup events framework
- HDU6128Inverse of sum