使用截击将数据检索为JSON不会显示在自定义列表中

时间:2018-08-19 07:31:37

标签: android mysql json android-volley

我想使用PHP文件,JSON形式和齐射显示来自MySQL的数据。我可以正常检索数据,但是不会使用SimpleAdapter将其显示在自定义列表上。

这是我正在使用的代码

JsonObjectRequest jreq = new JsonObjectRequest(Method.GET, url,
            new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {

                    JSONArray ja = null;
                    try {
                        ja = response.getJSONArray("report");

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

                            JSONObject jobj = ja.getJSONObject(i);
                            HashMap<String, String> item = new HashMap<String, String>();
                            item.put(DATA, jobj.getString(DATA));
                            item.put(VALOR, jobj.getString(VALOR));
                            item.put(KMS, jobj.getString(KMS));
                            item.put(HORAS, jobj.getString(HORAS));
                            item.put(MEDIAKMS, jobj.getString(MEDIAKMS));
                            item.put(MEDIAHORAS, jobj.getString(MEDIAHORAS));

                            Item_List.add(item);



                        } // for loop ends




                        adapter = new SimpleAdapter(
                                getApplicationContext(), Item_List,
                                R.layout.list_items, new String[] {DATA, VALOR, KMS, HORAS, MEDIAKMS, MEDIAHORAS},
                                new int[] {R.id.data_list, R.id.valor_list, R.id.kms_list, R.id.horas_list, R.id.mediakms_list,
                                R.id.mediahoras_list});

                        listview.setAdapter(adapter);

解决了变化

getApplicationContext(), 

收件人:

MainActivity.this

1 个答案:

答案 0 :(得分:0)

尝试在这样的UI线程上运行代码

runOnUiThread(new Runnable() {
@Override
public void run() {
        listview.setAdapter(adapter);
    }
 });

要在任何视图上执行任何操作,您需要在作为主线程的用户界面线程上运行该视图