AsyncTask的代码

来源:互联网 发布:剑网3捏脸数据 编辑:程序博客网 时间:2024/06/03 21:44
package com.example.asynctask1409g;


import com.example.asynctask1409g.net.HttpUtils;


import android.app.Activity;
import android.app.ProgressDialog;
import android.graphics.Bitmap;
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.ImageView;


public class MainActivity extends Activity {


private ImageView mIv;
private ProgressDialog mDlg;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

initViews();

//图片地址
String url = "http://101.200.142.201:8080/tqyb/images/top1.png";
new AsyncTask<String, Void, Bitmap>() {
@Override
protected Bitmap doInBackground(String... params) {
//后台耗时操作
Bitmap bm = null;
try {
//休眠3秒
Thread.sleep(3000);
bm = HttpUtils.readImage(params[0]);
} catch (Exception e) {
e.printStackTrace();
}
return bm;
}

protected void onPostExecute(Bitmap result) {
//更新UI
mIv.setImageBitmap(result);
//关闭加载框
mDlg.dismiss();
};

protected void onPreExecute() {
//请求前
mDlg = ProgressDialog.show(MainActivity.this, "提示", "加载中...");
};
}.execute(url);
}


private void initViews() {
mIv = (ImageView) findViewById(R.id.iv);
}
}
1 0