Xutil框架的基本使用


一、HttpUtils

作用:用来访问网络,获取网络数据

 

// 使用XUtil请求服务器

// 需要访问网络的权限

HttpUtils http = new HttpUtils();

http.send(method, url, callBack)//请求的类型,url,回调接口

及四个参数方法

send方法参数列表:
 1. HttpRequest.HttpMethod  method 请求方式
                HttpRequest.HttpMethod.GET   get方式
                HttpRequest.HttpMethod.POST   post方式
 2.String url    请求网址
 3.RequestParams params   参数对象,对象以键值对形式存储,自动拼接(没有参数,就使用三个参数的send方法)

     对象创建:RequestParams params = new RequestParams();
              params.addQueryStringParameter("method", "info");
              params.addQueryStringParameter("access_token",
                    "3.1042851f652496c9362b1cd77d4f849b.2592000.1377530363.3590808424-248414");
 4.RequestCallBack callBack   回调通知接口,
                 onSuccess  请求这一动作成功之后的回调方法
                 onFailure  失败的回调,不是指的服务器返回数据告诉你失败,而是出现网络错误啊 服务器出现问题啊等等这种错误


上层文件也用

HttpUtils的download方法(支持断点续传):

 

以下都是该方法的重载:

        参数:

          1. String url 下载地址

          2. String target  下载文件存储位置

          3. RequestCallBack callback 回调通知接口

 

        download(String url, String target,RequestCallBack callback){ }

 

       download(String url, String target, boolean autoResume,RequestCallBack callback) {}

 

 

         4.  boolean autoResume  为true时,如果目标文件存在,接着未完成的部分继续下载。

          5.boolean autoRename  为true时,如果从请求返回信息中获取到文件名,下载完成后自动重命名

        download(String url, String target,boolean autoResume, boolean autoRename,RequestCallBack callback) {}

 

       // 加上参数的下载

        download(String url, String target, RequestParams params,RequestCallBack callback) {}

 

        download(String url, String target, RequestParams params, boolean autoResume,RequestCallBack callback) { }

 

        download(String url, String target,RequestParams params, booleanautoResume, boolean autoRename, RequestCallBack callback) {}

 

       // 指定访问网络方式

         download(HttpRequest.HttpMethod method, String url, Stringtarget,RequestParams params, RequestCallBack callback) {}

 

        download(HttpRequest.HttpMethod method, String url, Stringtarget,RequestParams params, boolean autoResume, RequestCallBackcallback) {}

 

        download(HttpRequest.HttpMethod method, String url, String target,RequestParams params, boolean autoResume, boolean autoRename,RequestCallBack callback) {}





回调接口中两个方法

1、onSuccess(ResponseInfo responseInfo)请求成功,responseInfo.result;是一个字符串

2、onFailure(HttpException error, String msg)请求失败回调

 

http.send(HttpMethod.GET, ConstantVaue.CATEGORIES_URL,new RequestCallBack() {

         //请求方式 url 请求的返回值

         @Override

         publicvoid onSuccess(ResponseInfo responseInfo) {// 请求成功

                  Stringcategories = responseInfo.result;

 

                          }

 

                          @Override

                          publicvoid onFailure(HttpException error, String msg) { // 请求失败

                                   error.printStackTrace();

                                   Toast.makeText(mActivity,"服务器连接失败", Toast.LENGTH_LONG).show();

                          }

                  });

二、ViewUtil

减少findViewById(),通过注解的方式查找id,底层也是findViewById();提高工作效率,使得代码更加清晰,容易维护

1、添加注解ViewUtils.inject(this,view),如果不是actiity那么需要传入布局对象,如果是则第二个参数不需要传视图对象。

2、直接用注解

@ViewInject(R.id.vp_news_menu_detail)

private ViewPagervp_news_detail_pager;

 

三、BitmapUtils

用于处理图片资源

new BitmapUtils(mActivity)//获取对象

utils.display(IageView view ,Url url)将图片设置给指定控件


BitmapUtils支持对三种形式的图片资源进行加载,
分别是assets图片,sdcard图片和网络图片,使用LRU(最近最少使用算法),
通过磁盘缓存,程序缓存来避免OOM问题.


对于res里的图片,程序运行时就加载在内存中了,所以没必要使用BitmapUtils了


据作者解释,BitmapUtils没有采用单例模式,这样可以采用不同的默认配置来加载不同的图片.
BitmapUtils一共有两种配置BitmapGlobalConfig和BitmapDisplayConfig
BitmapGlobalConfig主要配置磁盘缓存路径,程序缓存大小(这个大小在源码中有限制),
BitmapDisplayConfig主要配置异步加载未完成时临时显示的图片,加载失败的图片,显示图片的最大Size,
加载图片动画,图片是否翻转,是否显示原图(不建议使用)等.


你可能感兴趣的:(android)