簡體   English   中英

如何從Volley onResponse返回解析的數據?

[英]How to return parsed data from Volley onResponse?

我正在使用Volley StringRequest使用以下代碼對Web服務進行GET調用。

ArrayList<HashMap<String, Object>> list;
StringRequest getRequest = new StringRequest(Request.Method.GET,activity.getString(R.string.URL),
            new Response.Listener<String>() {

                @Override
                public void onResponse(String response) {
                    int success;

                //Parsed data and Want to return list 
                //return list;

            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {

                    Log.e("Error.Response", error.toString());


                }
            });
    request.add(getRequest);

知道如何返回列表數據嗎?

使用接口作為偵聽器並返回數據

public interface DataListener {

void onDataReceived(ArrayList<HashMap<String, Object>> response);
void onError(DataResponse resp); }    

然后在onResponse

datalistener.onDataReceived(list);    

在您的情況下,您僅在Volley請求之外定義了一個列表。 只需從接收數據的位置分配新數據。

list = yourNewList;

或使用界面。

但是,您使用的是StringRequest,並且只能從服務器獲取String作為響應。 您將必須自己解析String並建立列表。

如果期望JSON響應,則可以使用JsonArrayRequest或JsonObjectRequest代替StringRequest。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM