android AQuery框架执行回调 AjaxCallback<?>

来源:互联网 发布:手机ssh连接linux 编辑:程序博客网 时间:2024/05/17 05:18

android AQuery框架发网络请求时会通过一个回调方法将获取的数据返回回来 ,很多时候网络请求方法会放在一个单独的包中,这里通过重写一次回调将callback回来的数据 再去回调一次到需要的地方   AQuery的一个下载地址:http://download.csdn.net/detail/yangbo437993234/7630885

在一个类中写一个回调方法

public class SendPost{/** * 发送请求并返回想要的信息列表 * 这里用的是Aquery框架的post请求 ,直接发送json对象到服务器 。其它请求方式一样可以 * 重点:需要传入一个 AjaxCallback<?> 回调对象作为需要获取数据的地方进行实时获取数据 *       这里返回的对象为JSONObject 所以传入对象为 AjaxCallback<JSONObject> **/  //实例化Aquery时需要传入一个Context ,Activity 或者View 对象public void async_post(String url, JSONObject args,Activity activity,final AjaxCallback<JSONObject> delegate ) {   AQuery aq = new AQuery(activity);  //实例化AQuery框架 aq.post(url, args, JSONObject.class,  //发送POST请求 并返回数据 JSONObject jsonnew AjaxCallback<JSONObject>() {@Overridepublic void callback(String url, JSONObject json,AjaxStatus status) {delegate.callback(url, json, status);                                              // 这里将获取的JSON数据 回调到需要的地方。。如果就一个地方使用的话,                                            //也可以直接在这里进行处理}});}

在写好回调方法后 ,我们需要将它用在需要使用的地方  假设下段代码在Activity中的某个方法里

//这里的数据都是假数据String url="http://115.28.165.154:8080/";        JSONObject object=new JSONObject("name:Iyangc");new SendPost().async_post( url, args,this,               new AjaxCallback<List<DataInfo>>() {public void callback(String url,JSONObject object, com.androidquery.callback.AjaxStatus status) {                  //object为类SendPost发送请求回调回来的数据   // 可以在回调使用网络获取的数据了}});

这样就可以在Activity中获取回调回来的数据了。




0 0
原创粉丝点击