簡體   English   中英

錯誤:沒有為 JsonArrayRequest 找到合適的構造函數

[英]error: no suitable constructor found for JsonArrayRequest

我是一名編程學生,正在構建一個使用 api json url 的 Android 應用程序,但我沒有為 JsonArrayRequest 找到合適的構造函數

這是錯誤:

C:\\Users\\jerma\\AndroidStudioProjects\\VolleyParsing\\app\\src\\main\\java\\com\\jermainebjonesgmail\\volleyparsing\\MainActivity.java:37: 錯誤:沒有找到合適的構造函數用於 JsonArrayRequest(int,String,>,) JsonArrayRequest arrayRequest = new JsonArrayRequest(Method.GET, ^ 構造函數 JsonArrayRequest.JsonArrayRequest(String,Listener,ErrorListener) 不適用(實際和形式參數列表的長度不同)構造函數 JsonArrayRequest.JsonArrayRequest(int,String,JSONArray,Listener,ErrorListener) 不適用

這是我的代碼:

public class MainActivity extends AppCompatActivity {

private final static String URL = "https://age-of-empires-2-api.herokuapp.com/api/v1/units";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    RequestQueue queue = Volley.newRequestQueue(this);

    JsonArrayRequest arrayRequest = new JsonArrayRequest(Method.GET,
            URL, new Response.Listener<JSONArray>() {

        @Override
        public void onResponse(JSONArray response) {

            Log.d("Response: ", response.toString());

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

            VolleyLog.d("Error", error.getMessage());
        }
    });

    queue.add(arrayRequest);


  }
}

您正在以錯誤的方式創建 JsonArrayRequest。 有關構造函數,請參閱java 文檔

構造函數總結

JsonArrayRequest(String url, Response.Listener<JSONArray> listener, Response.ErrorListener errorListener)
      Creates a new request.

JsonArrayRequest 可以創建如下:

Request request = new JsonArrayRequest(httpMethod, url, params, new Response.Listener<JSONArray>() {
        @Override
        public void onResponse(JSONArray response) {
            serverCallback.onAPIResponse(apiTag, response);
        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            serverCallback.onErrorResponse(apiTag, error);
        }
    }) {
        @Override
        public Map<String, String> getHeaders() throws AuthFailureError {
            return headers != null ? headers : super.getHeaders();
        }
    };

在此處找到示例代碼

暫無
暫無

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

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