作用:用来访问网络,获取网络数据
// 使用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
onSuccess 请求这一动作成功之后的回调方法
onFailure 失败的回调,不是指的服务器返回数据告诉你失败,而是出现网络错误啊 服务器出现问题啊等等这种错误
上层文件也用
HttpUtils的download方法(支持断点续传):
以下都是该方法的重载:
参数:
1. String url 下载地址
2. String target 下载文件存储位置
3. RequestCallBack
download(String url, String target,RequestCallBack
download(String url, String target, boolean autoResume,RequestCallBack
4. boolean autoResume 为true时,如果目标文件存在,接着未完成的部分继续下载。
5.boolean autoRename 为true时,如果从请求返回信息中获取到文件名,下载完成后自动重命名
download(String url, String target,boolean autoResume, boolean autoRename,RequestCallBack
// 加上参数的下载
download(String url, String target, RequestParams params,RequestCallBack
download(String url, String target, RequestParams params, boolean autoResume,RequestCallBack
download(String url, String target,RequestParams params, booleanautoResume, boolean autoRename, RequestCallBack
// 指定访问网络方式
download(HttpRequest.HttpMethod method, String url, Stringtarget,RequestParams params, RequestCallBack
download(HttpRequest.HttpMethod method, String url, Stringtarget,RequestParams params, boolean autoResume, RequestCallBack
download(HttpRequest.HttpMethod method, String url, String target,RequestParams params, boolean autoResume, boolean autoRename,RequestCallBack
回调接口中两个方法
1、onSuccess(ResponseInfo
2、onFailure(HttpException error, String msg)请求失败回调
http.send(HttpMethod.GET, ConstantVaue.CATEGORIES_URL,new RequestCallBack
//请求方式 url 请求的返回值
@Override
publicvoid onSuccess(ResponseInfo
Stringcategories = responseInfo.result;
}
@Override
publicvoid onFailure(HttpException error, String msg) { // 请求失败
error.printStackTrace();
Toast.makeText(mActivity,"服务器连接失败", Toast.LENGTH_LONG).show();
}
});
减少findViewById(),通过注解的方式查找id,底层也是findViewById();提高工作效率,使得代码更加清晰,容易维护
1、添加注解ViewUtils.inject(this,view),如果不是actiity那么需要传入布局对象,如果是则第二个参数不需要传视图对象。
2、直接用注解
@ViewInject(R.id.vp_news_menu_detail)
private ViewPagervp_news_detail_pager;
用于处理图片资源
new BitmapUtils(mActivity)//获取对象
utils.display(IageView view ,Url url)将图片设置给指定控件
BitmapUtils支持对三种形式的图片资源进行加载,
分别是assets图片,sdcard图片和网络图片,使用LRU(最近最少使用算法),
通过磁盘缓存,程序缓存来避免OOM问题.
对于res里的图片,程序运行时就加载在内存中了,所以没必要使用BitmapUtils了
据作者解释,BitmapUtils没有采用单例模式,这样可以采用不同的默认配置来加载不同的图片.
BitmapUtils一共有两种配置BitmapGlobalConfig和BitmapDisplayConfig
BitmapGlobalConfig主要配置磁盘缓存路径,程序缓存大小(这个大小在源码中有限制),
BitmapDisplayConfig主要配置异步加载未完成时临时显示的图片,加载失败的图片,显示图片的最大Size,
加载图片动画,图片是否翻转,是否显示原图(不建议使用)等.