public class MainActivity extends Activity { 时间=private String  url “https://cache.yisu.com/upload/information/20200311/46/200000.jpg”; @Override protected void  onCreate (Bundle savedInstanceState), { super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); testTask (); } public void  testTask () { DownloadPicTask task =, new DownloadPicTask (); url=task.imgPath ; task.img =, (ImageView), findViewById (R.id.p_w_picpathView1); task.execute (url); } }
//任务类
package com.example.task; import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.AsyncTask; import android.util.Log; import android.widget.ImageView; public , class DownloadPicTask extends  AsyncTask<字符串,整数,,String> { public String  imgPath;, private byte[],数据; public ImageView  img; protected void  onPrepareExecute () { Log.v(“任务”,“onPrepareExecute”); super.onPreExecute (); }//,doInBackground方法内部执行后台任务,不可在此方法内修改UI @Override protected String  doInBackground(字符串…,arg0), {//,TODO Auto-generated method 存根 Log.v(“任务”,“doInBackground ”, +, arg0); HttpClient HttpClient =, new DefaultHttpClient (); HttpGet HttpGet =, new HttpGet (imgPath); HttpResponse HttpResponse =,空; try { 时间=httpResponse httpClient.execute (httpGet); .getStatusCode if (httpResponse.getStatusLine () (),==, 200), { 时间=data EntityUtils.toByteArray (httpResponse .getEntity ()); } },catch (Exception e), { e.printStackTrace (); } return 零; }//,onProgressUpdate方法用于更新进度信息 @Override protected void  onProgressUpdate(整数…,进展),{ Log.v(“任务”,“onProgressUpdate”); super.onProgressUpdate(进展); }//,onPostExecute方法用于在执行完后台任务后更新UI,显示结果 @Override protected void  onPostExecute (String 结果),{//,progressDialog.dismiss (); Log.v(“任务”,“onPostExecute”); Bitmap bmp=BitmapFactory.decodeByteArray(数据,,0,,data.length); img.setImageBitmap (bmp); }//,虚方法用于在取消执行中的任务时更改UI @Override protected void 虚(),{ Log.v(“任务”,“虚”); } }
//. xml中只有一个ImageView控件