Volley常见问题onResponse Callback的实现
来源:互联网 发布:stm32串口接收数据 编辑:程序博客网 时间:2024/05/01 14:55
起源在于今天遇到一个问题,之前总是把ListView和Adapter的信息写在onResponse里面,尤其可能还需要添加onClickItemListener之类,导致整个方法极其繁杂,很不利于debug和维护,于是决定把部分封装一个新的类中,只要结束后返回arraylist就可以了。
没想到的是明明在onResponse中获得了数据的arraylist,每当在最后返回时候,总是null。经过查询资料发现,因为Volley Request是异步的,在onResponse获得的数据并不能在最后用返回,换言之,返回的还是初始化的arraylist。那么解决办法只能从onResponse中获取数据了,最简单的办法是利用interface的callback方法进行传值。
接下来附上几段从stackoverflow上看到的代码:
public void getString(final VolleyCallback callback) { StringRequest strReq = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() { @Override public void onResponse(String response) { result=response; callback.onSuccess(result); } }...}}public interface VolleyCallback{ void onSuccess(String result);}
//以下代码在activity中:
public void onResume(){ super.onResume(); getString(new VolleyCallback(){ @Override public void onSuccess(String result){ ... //do stuff here } });}
1 0
- Volley常见问题onResponse Callback的实现
- 关于volley onResponse中返回的数据无法最为最后返回的解决
- 对于Volley中onResponse无法返回数据结果的问题解决方法
- 对于Volley中onResponse无法返回数据结果的问题解决方法
- 使用Volley框架,不走onResponse和onError方法
- AIDL中callback的实现
- Callback 实现
- 自己实现的一个Script Callback
- Client端异步Callback实现的原理
- Javascript Callback的两种实现方案
- 在 alchemy 中,callback 的实现实例
- 用JAVA的接口实现callback功能
- 【移动开发】AIDL中callback的实现
- CallBack 的理解和java实现
- jQuery的deferred对象实现callback
- Java CallBack&&Hook 回调的实现
- 5种语言的callback实现
- 通过Volley实现的ImageGetter
- 笔试——约德尔测试
- 单片机I/O口使用
- how to set UILable line height (line space, gap between lines)
- Rotate Function
- Cocos2d-x 动画(Animate)的制作
- Volley常见问题onResponse Callback的实现
- 2016 ACM/ICPC Asia Regional Dalian Online 大连网赛
- ubuntu 安装phpstorm
- 接口自动化测试——前言
- InFusion错误类型分析
- 指定viewcontroller的entrypoint
- 最长公共子序列问题 Longest Common Subsequence problem
- 高德地图 react-native(一)
- Increasing Triplet Subsequence