The Android volley framework uses the method detailed _android

Source: Internet
Author: User

This article mainly from two aspects of the Android volley framework of the use of the method to explain, the specific contents are as follows

First, the network request

1.get Mode request data

1 Create a request queue
requestqueue Requestqueue = Volley.newrequestqueue (volleyactivity.this);
 
2 Create a request
String URL = "Http://api.m.mtime.cn/PageSubArea/TrailerList.api";
 
Stringrequest stringrequest = new Stringrequest (URL, new response.listener<string> () {
  //Receive data callback correctly
  @ Override public
  void Onresponse (String s) {
    tv_volley_result.settext (s);
  }
, new Response.errorlistener () {//Listener callback After an exception has occurred
  @Override public
  void Onerrorresponse (Volleyerror volleyerror) {
    Tv_volley_result.settext ("Load failed" + Volleyerror);
  }
);
 
3 Add the created request to the request queue
Requestqueue.add (stringrequest);
  

2.post Mode request data

1 Create a request queue
requestqueue Requestqueue = Volley.newrequestqueue (volleyactivity.this);
 
2 Create a POST request
String URL = "Http://api.m.mtime.cn/PageSubArea/TrailerList.api";
Stringrequest stringrequest = new Stringrequest (Request.Method.POST, URL, new response.listener<string> () {
  @Override public
  void Onresponse (String s) {
    tv_volley_result.settext (s);
  }
}, new Response.errorlistener () {
  @Override public
  void Onerrorresponse (Volleyerror volleyerror) {
    tv_ Volley_result.settext ("request failed" + Volleyerror);
  }
) {
  @Override
  protected map<string, string> Getparams () throws Authfailureerror {map<string
 
    , string> map = new hashmap<string, string> ();            map.put ("value1", "param1");
 
    return map;
  }
;
 
3 Add a POST request to the queue
Requestqueue.add (stringrequest);
  

3. Request JSON data

1 Create a request queue
requestqueue Requestqueue = Volley.newrequestqueue (volleyactivity.this);
 
2 Create a request
String URL = "Http://api.m.mtime.cn/PageSubArea/TrailerList.api";
Jsonobjectrequest jsonobjectrequest = new jsonobjectrequest (URL, null, new response.listener<jsonobject> () {
  @Override public
  void Onresponse (Jsonobject jsonobject) {
    Tv_volley_result.settext ( Jsonobject.tostring ());
  }
, New Response.errorlistener () {
  @Override public
  void Onerrorresponse (Volleyerror volleyerror) {
    Tv_volley_result.settext ("request failed" + Volleyerror);
  }
);
 
3 Add the created request to the request queue
Requestqueue.add (jsonobjectrequest); 

Second, picture loading

1.ImageRequest Load Picture

1 Create a request queue
requestqueue Requestqueue = Volley.newrequestqueue (volleyactivity.this);
 
2 Create a picture of the request
String url = "Yun_qi_img/160347.30270341.jpg";
Imagerequest imagerequest = new Imagerequest (URL, new response.listener<bitmap> () {
  @Override
  public void Onresponse (Bitmap Bitmap) {
    //correctly received picture
    Iv_volley_result.setimagebitmap (Bitmap);
  }
, 0, 0, Bitmap.Config.RGB_565, New Response.errorlistener () {
  @Override public
  void Onerrorresponse (volleyerror Volleyerror) {
    iv_volley_result.setimageresource (R.drawable.atguigu_logo);
  }
});
 
3 Add the request to the request queue
Requestqueue.add (imagerequest);

2.Imageloader Load Picture

Create a request queue
requestqueue Requestqueue = Volley.newrequestqueue (volleyactivity.this);
 
Imageloader Imageloader = new Imageloader (Requestqueue, New Bitmapcache ());
 
Load picture
String url = "Yun_qi_img/160347.30270341.jpg";
Imageloader.imagelistener Imagelistener = Imageloader.getimagelistener (Iv_volley_result, R.drawable.atguigu_logo, R.drawable.atguigu_logo);
Imageloader.get (URL, imagelistener);

Bitmapcache.java

public class Bitmapcache implements Imageloader.imagecache {
  private lrucache<string, bitmap> Mcache;

  Public Bitmapcache () {
    int maxSize = 1024 * 1024;//10m
    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);
  }


3.NetworkImageView Load Picture

<com.android.volley.toolbox.networkimageview
  android:id= "@+id/iv_volley_networkimagview"
  android: Layout_width= "200DP"
  android:layout_height= "200DP"
  android:visibility= "Gone" >
 
</ Com.android.volley.toolbox.networkimageview>
 

Create a request queue
requestqueue Requestqueue = Volley.newrequestqueue (volleyactivity.this);
 
Create a imageloader
imageloader imageloader = new Imageloader (Requestqueue, New Bitmapcache ());
 
Default picture and exception picture settings
Iv_volley_networkimagview.setdefaultimageresid (R.drawable.atguigu_logo);
Iv_volley_networkimagview.seterrorimageresid (R.drawable.atguigu_logo);
 
Load picture
String url = "Yun_qi_img/160347.30270341.jpg";
Iv_volley_networkimagview.setimageurl (URL, imageloader);

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.