最近一直在学习从远程服务器获取图片,开始时都是手写这些处理,后来接触到了smartImageview这个插件。github获取地址:https://github.com/loopj/android-smart-p_w_picpath-view

官方原版插件说明

Overview

        SmartImageView is a drop-in replacement for Android’s standard ImageView which additionally allows p_w_picpaths to be loaded from URLs or the user’s contact address book. Images are cached to memory and to disk for super fast loading.


Features

    • Drop-in replacement for ImageView

    • Load p_w_picpaths from a URL

    • Load p_w_picpaths from the phone’s contact address book

    • Asynchronous loading of p_w_picpaths, loading happens outside the UI thread

    • Images are cached to memory and to disk for super fast loading

    • SmartImage class is easily extendable to load from other sources


其中用到的就是:setImageUrl()方法,该方法有好几个重载方法,用到了这个

setImageUrl(String url,int fallbackResource)

这个方法的参数解析如下:url当然是远程图片的地址,第二个参数是当获取远程图片失败时,显示的图片,是一个int类型的res下的图片的一个id


        在使用时,直接在布局文件里使用SmartImageView就行,这个类继承自ImageView

xml version="1.0" encoding="utf-8"?>
   xmlns:android="http://schemas.android.com/apk/res/android"

   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical">
   
           android:id="@+id/siv"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"/>

在MainActivity 中

com.yuanlp.smartp_w_picpathviewandroid.support.v7.app.AppCompatActivityandroid.os.Bundlecom.yuanlp.smartp_w_picpathview.loopj.android.p_w_picpath.SmartImageViewMainActivity AppCompatActivity {

    (Bundle savedInstanceState) {
        .onCreate(savedInstanceState)setContentView(R.layout.)SmartImageView siv=(SmartImageView) findViewById(R.id.)siv.setImageUrl(R.drawable.)}
}