• 1,activity.xml
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent">    <ImageView        android:id="@+id/imageView1"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:layout_alignParentLeft="true"        android:layout_alignParentTop="true"/>    <ProgressBar        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:id="@+id/progressBar1"        android:visibility="gone"        style="?android:attr/progressBarStyleLarge"        android:layout_centerHorizontal="true"        android:layout_centerVertical="true"/>RelativeLayout>
  • MainActivity.java
package com.example.flanwu.expriment_two;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.os.AsyncTask;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import android.widget.ProgressBar;import java.net.URL;import java.io.BufferedInputStream;import java.io.IOException;import java.io.InputStream;import java.net.MalformedURLException;import java.net.URLConnection;public class MainActivity extends AppCompatActivity {    private ImageView mImageView = null;    private ProgressBar mProgressBar = null;    private String URLs = "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1591194216,3468862819&fm=26&gp=0.jpg";    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.layout);        //实例化控件        this.mImageView = (ImageView)findViewById(R.id.imageView1);        this.mProgressBar = (ProgressBar)findViewById(R.id.progressBar1);        //实例化异步任务        ImageDownloadTask task = new ImageDownloadTask();        // 执行异步任务        task.execute(URLs);    }    class ImageDownloadTask extends AsyncTask<String, Void, Bitmap>{        @Override        protected Bitmap doInBackground(String... params){            Bitmap bitmap = null;            String url = params[0];            URLConnection connection;            InputStream is;            try{                connection = new URL(url).openConnection();                is = connection.getInputStream(); //获取输入流                BufferedInputStream buf = new BufferedInputStream(is);                bitmap = BitmapFactory.decodeStream(buf);                is.close();                buf.close();            }catch (MalformedURLException e){                e.printStackTrace();            }catch (IOException e){                e.printStackTrace();            }            return bitmap;        }        @Override        protected void onPreExecute(){            // 显示等待圆环            mProgressBar.setVisibility(View.VISIBLE);        }        @Override        protected void onPostExecute(Bitmap result){            // 下载完毕,隐藏等待圆环            mProgressBar.setVisibility(View.GONE);            mImageView.setImageBitmap(result);        }    }}

结果

更多相关文章

  1. Android实例三:学习Service
  2. libgdx实例分析小记(一)
  3. android 发送e-mail实例
  4. SQLite 的应用实例
  5. android蓝牙主动发起配对实例
  6. Android(安卓)ContentProvider 填删改查 实例
  7. Android系统打电话实例
  8. 初、中级android基本知识点整理
  9. Android(安卓): 等待view加载完成后执行操作

随机推荐

  1. Python安装第三方库太慢?配置好这个速度飞
  2. Jupyter Notebook最常用的五大配置技巧
  3. 对SVG动画进行异步懒光栅化处理 [每日前
  4. 基于geopandas的空间数据分析——空间计
  5. 怎样在服务器上启用 HTTPS [每日前端夜话
  6. matplotlib绘图的核心原理讲解
  7. matplotlib绘图技巧详解(一)
  8. 异步函数中的异常处理及测试方法 [每日前
  9. Python+Kepler.gl轻松制作酷炫路径动画
  10. Python笔下那些神奇的树