Android开发学习:[22]获取网络图片

2025-10-20 23:17:39

1、首先我们打开我们下载安装好的Android Studio新建好项目

Android开发学习:[22]获取网络图片

2、然后我们在布局界面中添加布局代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"

    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    android:paddingBottom="@dimen/activity_vertical_margin"

    tools:context="com.basillee.asus.demo.MainActivity3">

<ImageView

    android:id="@+id/imageView"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:layout_centerInParent="true"

></ImageView>

</RelativeLayout>

主要就是在屏幕中央添加一个ImageView控件

Android开发学习:[22]获取网络图片

3、然后我们编写一个getPicture()方法用来返回一个Bitmap对象,用来获取网络图片:

   public Bitmap getPicture(String path){

        Bitmap bm=null;

        try{

            URL url=new URL(path);

            URLConnection connection=url.openConnection();

            connection.connect();

            InputStream inputStream=connection.getInputStream();

            bm= BitmapFactory.decodeStream(inputStream);

        } catch (MalformedURLException e) {

            e.printStackTrace();

        } catch (IOException e) {

            e.printStackTrace();

        }

        return  bm;

    }

Android开发学习:[22]获取网络图片

4、然后我们在oncreate方法中添加一个新线程:

 protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main_activity3);

        imageView= (ImageView) findViewById(R.id.imageView);

        new Thread(new Runnable() {

            @Override

            public void run() {

                final Bitmap bitmap=getPicture("http://h.hiphotos.baidu.com/news/q%3D100/sign=be8e90f30cfa513d57aa68de0d6d554c/c75c10385343fbf29d10a30cb47eca8065388fe4.jpg");

                try {

                    Thread.sleep(2000);

                } catch (InterruptedException e) {

                    e.printStackTrace();

                }

                imageView.post(new Runnable() {

                    @Override

                    public void run() {

                        imageView.setImageBitmap(bitmap);

                    }

                });

            }

        }).start();

    }

Android开发学习:[22]获取网络图片

5、编写好了之后我们打开虚拟机

Android开发学习:[22]获取网络图片

6、然后运行此项目我们可以看到图片显示在屏幕中央

Android开发学习:[22]获取网络图片

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢