(1)ImageLoader獲取圖片
public class HomeActivity extends Activity
{
private ImageLoader mImageLoader;
private RequestQueue requestQueue;
private SWAdapter listSwAdapter;
private void initValue()
{
this.requestQueue = Volley.newRequestQueue(this);
this.mImageLoader = new ImageLoader(requestQueue,new ImageBitmapCache());
this.mImageLoader.get("http://ar.ephhk.com/child/life/upload/apkicon/ic_ds.png",
ImageLoader.getImageListener(this.mImageView, R.drawable.ic_launcher, R.drawable.ic_launcher));
}
/**
* get獲取數據
*/
private void getJsonData()
{
String url = "http://ar.ephhk.com/child/life/index.php?r=api/GetCreativeSw";
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject jsonObject) {
}
},errorListener);
requestQueue.add(jsonObjectRequest);
}
/**
* post獲取數據
*/
private void postJsonData(int categoryId)
{
/**
* 判斷網絡是否可用
*/
String url = "http://localhost/trialapk/index.php?r=api/GetSWList";
HashMap<String,String> params = new HashMap<String,String>();
params.put("pagesize",pagesize + "");
params.put("pageindex",pageIndex + "");
params.put("category_id",categoryId + "");
params.put("pagecount",pagecount + "");
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST,url, new JSONObject(params),
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject jsonObject) {
}
},errorListener);
}
/**
* 請求錯誤事件監聽
*/
private Response.ErrorListener errorListener= new Response.ErrorListener(){
@Override
public void onErrorResponse(VolleyError error) {
if (error instanceof NetworkError) {
Toast.makeText(HomeActivity.this, "網路錯誤",Toast.LENGTH_SHORT);
}else if (error instanceof ClientError) {
Toast.makeText(HomeActivity.this, "客戶端錯誤",Toast.LENGTH_SHORT);
} else if (error instanceof ServerError) {
Toast.makeText(HomeActivity.this, "服務端錯誤",Toast.LENGTH_SHORT);
} else if (error instanceof AuthFailureError) {
Toast.makeText(HomeActivity.this, "驗證錯誤",Toast.LENGTH_SHORT);
} else if (error instanceof ParseError) {
Toast.makeText(HomeActivity.this, "解析錯誤",Toast.LENGTH_SHORT);
} else if (error instanceof NoConnectionError){
Toast.makeText(HomeActivity.this, "無連接錯誤",Toast.LENGTH_SHORT);
} else if (error instanceof TimeoutError) {
Toast.makeText(HomeActivity.this, "連接超時",Toast.LENGTH_SHORT);
}
}
};
ImageBitmapCache.java
package com.lzp.elearning.common.Downloader;
import android.graphics.Bitmap;
import android.support.v4.util.LruCache;
import com.android.volley.toolbox.ImageLoader.ImageCache;
public class ImageBitmapCache implements ImageCache
{
private LruCache<String,Bitmap> mCache;
//圖片緩存的最大空間
private final static int maxSize = 8 * 1024 * 1024;
public ImageBitmapCache(){
mCache = new LruCache<String, Bitmap>(maxSize){
@Override
protected int sizeOf(String key, Bitmap bitmap) {
return bitmap.getRowBytes() * bitmap.getHeight();
}
};
}
@Override
public Bitmap getBitmap(String url) {
return mCache.get(url);
}
@Override
public void putBitmap(String url, Bitmap bitmap) {
mCache.put(url, bitmap);
}
}