1. 程式人生 > >Volley高併發處理網路請求(No2)

Volley高併發處理網路請求(No2)

public class MainActivity extends AppCompatActivity { private ImageView image; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); image = (ImageView) findViewById(R.id.image); loadImageByVolley(); }
/** * 通過Volley載入網路圖片 * * new ImageRequest(String url,Listener listener,int maxWidth,int maxHeight,Config decodeConfig,ErrorListener errorListener) * url:請求地址 * listener:請求成功後的回撥 * maxWidth、maxHeight:設定圖片的最大寬高,如果均設為0則表示按原尺寸顯示 * decodeConfig:圖片畫素的儲存方式。Config.RGB_565表示每個畫素佔2個位元組,Config.ARGB_8888表示每個畫素佔4個位元組等。 * errorListener:請求失敗的回撥
*/ private void loadImageByVolley() { String url = "http://pic20.nipic.com/20120409/9188247_091601398179_2.jpg"; ImageRequest request = new ImageRequest( url, new Listener<Bitmap>() { @Override
public void onResponse(Bitmap bitmap) { image.setImageBitmap(bitmap); } }, 0, 0, Config.RGB_565, new ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { image.setImageResource(R.mipmap.ic_launcher); } }); //設定請求的Tag標籤,可以在全域性請求佇列中通過Tag標籤進行請求的查詢 request.setTag("loadImage"); //通過Tag標籤取消請求佇列中對應的全部請求 MyApplication.getHttpQueues().add(request); } }