转自:http://blog.csdn.net/lfdfhl/article/details/12223345

稍微做了一点儿修改/**      * 利用NetworkImageView显示网络图片      */      private void showImageByNetworkImageView(){          String imageUrl="http://avatar.csdn.net/6/6/D/1_lfdfhl.jpg";          RequestQueue requestQueue = Volley.newRequestQueueInDisk(ctx, "/sdcard/demo/", null);        ImageLoader imageLoader = new ImageLoader(requestQueue, new BitmapCache());                  mNetworkImageView.setTag("url");          mNetworkImageView.setImageUrl(imageUrl,imageLoader);      }  

volley源文件:volley.zip

volley的jar文件:Volley.jar.zip

使用例子:

import org.json.JSONObject;import android.app.Activity;import android.app.ProgressDialog;import android.content.Context;import android.os.Bundle;import android.widget.ImageView;import com.android.volley.Request;import com.android.volley.RequestQueue;import com.android.volley.Response;import com.android.volley.VolleyError;import com.android.volley.toolbox.ImageLoader;import com.android.volley.toolbox.ImageLoader.ImageListener;import com.android.volley.toolbox.JsonObjectRequest;import com.android.volley.toolbox.NetworkImageView;import com.android.volley.toolbox.Volley;public class MainActivity extends Activity {    private Context ctx;      private RequestQueue mQueue;      private ImageLoader mImageLoader;        private ImageView mImageView;      private NetworkImageView mNetworkImageView;          @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);                        this.ctx = this;         initView();                showImageByNetworkImageView();    }        private void initView(){        mImageView=(ImageView) findViewById(R.id.imageView);          mNetworkImageView=(NetworkImageView)findViewById(R.id.networkImageView);    }        /**      * 利用Volley获取JSON数据      */      private void getJSONByVolley() {          RequestQueue requestQueue = Volley.newRequestQueue(this);          String JSONDataUrl = "http://pipes.yahooapis.com/pipes/pipe.run?_id=giWz8Vc33BG6rQEQo_NLYQ&_render=json";          final ProgressDialog progressDialog = ProgressDialog.show(this, "This is title", "...Loading...");            JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(                  Request.Method.GET,                   JSONDataUrl,                   null,                  new Response.Listener<JSONObject>() {                      @Override                      public void onResponse(JSONObject response) {                          System.out.println("response="+response);                          if (progressDialog.isShowing()&&progressDialog!=null) {                              progressDialog.dismiss();                          }                      }                  },                   new Response.ErrorListener() {                      @Override                      public void onErrorResponse(VolleyError arg0) {                             System.out.println("sorry,Error");                      }                  });          requestQueue.add(jsonObjectRequest);     }      private void loadImageByVolley(){          String imageUrl="http://avatar.csdn.net/6/6/D/1_lfdfhl.jpg";          RequestQueue requestQueue = Volley.newRequestQueue(this);                 ImageLoader imageLoader = new ImageLoader(requestQueue, new BitmapCache());          ImageListener listener = ImageLoader.getImageListener(mImageView, R.drawable.ic_launcher,R.drawable.ic_launcher);          imageLoader.get(imageUrl, listener);      }            /**      * 利用NetworkImageView显示网络图片      */      private void showImageByNetworkImageView(){          String imageUrl="http://avatar.csdn.net/6/6/D/1_lfdfhl.jpg";          RequestQueue requestQueue = Volley.newRequestQueueInDisk(ctx, "/sdcard/demo/", null);        ImageLoader imageLoader = new ImageLoader(requestQueue, new BitmapCache());                  mNetworkImageView.setTag("url");          mNetworkImageView.setImageUrl(imageUrl,imageLoader);      }  }

import android.graphics.Bitmap;import android.support.v4.util.LruCache;import com.android.volley.toolbox.ImageLoader.ImageCache;public class BitmapCache implements ImageCache {    private LruCache<String, Bitmap> mCache;      public BitmapCache() {          int maxSize = 10 * 1024 * 1024;          mCache = new LruCache<String, Bitmap>(maxSize) {              @Override              protected int sizeOf(String key, Bitmap value) {                  return value.getRowBytes() * value.getHeight();              }          };      }      @Override      public Bitmap getBitmap(String url) {          return mCache.get(url);      }      @Override      public void putBitmap(String url, Bitmap bitmap) {          mCache.put(url, bitmap);      }  }

<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"       >        <com.android.volley.toolbox.NetworkImageView          android:id="@+id/networkImageView"          android:layout_width="120dip"          android:layout_height="120dip"          android:layout_centerHorizontal="true"          android:layout_marginTop="30dip"      />             <ImageView          android:id="@+id/imageView"          android:layout_width="120dip"          android:layout_height="120dip"          android:layout_centerInParent="true"      />    </RelativeLayout> 

更多相关文章

  1. Android(安卓)matrix 控制图片的旋转、缩放、移动
  2. android拍照与读取相册
  3. Android(安卓)报错:Caused by: android.os.FileUriExposedExcepti
  4. Android(安卓)P SystemUI之StatusBar UI布局status_bar.xml解析
  5. android用户界面-组件Widget-地图视图MapView
  6. Android中使Dialog显示时背景不变暗
  7. android解决坚屏拍照和保存图片旋转90度的问题,并兼容4.0
  8. [Android]在App中使用相机
  9. Android(安卓)屏幕设置

随机推荐

  1. golang map有什么用
  2. golang和erlang区别
  3. golang gin框架错误处理
  4. golang中创建错误的方法
  5. golang chan是否关闭
  6. golang web开发乱码的原因与解决方法
  7. golang与java语法上的区别
  8. golang-cache是全局吗
  9. golang中使用rand产生随机不重复数字
  10. golang中fscanf读取文件时把回车替换成0