猿问

将数据填充到 Listview 但 Arrayadapter 不起作用

我正在尝试将数据从我的arrayList列表视图中填充。但由于某种原因我收到错误error: no suitable constructor found for ArrayAdapter(activity2.SendPostRequest,int,int,ArrayList<HashMap<String,String>>)

constructor ArrayAdapter.ArrayAdapter(Context,int,int,HashMap<String,String>[]) is not applicable


                JSONArray json = new JSONArray(data);

                ArrayList<HashMap<String, String>>  arrayList = new ArrayList<HashMap<String, String>>();


                HashMap<String, String> map = new HashMap<String, String>();


                try {

                for(int i=0;i<json.length();i++){

                    JSONObject e =json.getJSONObject(i);


                    map.put("id", String.valueOf(i));

                    map.put("Name", "Vorname: " + e.getString("meta_value"));

                    map.put("orderid", "id: " + e.getString("post_id"));

                    arrayList.add(map);

                    return map.toString();

                }

                    ArrayAdapter<HashMap<String, String>> adapter = new ArrayAdapter<HashMap<String, String>>(this,android.R.layout.simple_list_item_1, android.R.id.text1, arrayList);


                list.setAdapter(adapter);

                }catch (JSONException e){

                    Log.e(this.getClass().getName(), "Some JSON error occurred" + e.getMessage());


                }

到处都找不到解决办法


HUH函数
浏览 112回答 1
1回答

千万里不及你

ArrayAdapter(activity2.SendPostRequest,int,int,ArrayList>)问题是您将其作为第一个参数传递,以便为适配器提供上下文。constructor ArrayAdapter.ArrayAdapter(Context,int,int,HashMap<String,String>[])Solution而不是这个通行证thisgetContext() or getActivity()因为这可能指向不同的上下文,具体取决于您使用的情况。
随时随地看视频慕课网APP

相关分类

Java
我要回答