Android使用JSON对象
我试图用从RESTApi获得的各种对象填充ListView 为了测试连接和对象是否被实际接收,我调用以下方法:Android使用JSON对象,android,arrays,listview,textview,Android,Arrays,Listview,Textview,我试图用从RESTApi获得的各种对象填充ListView 为了测试连接和对象是否被实际接收,我调用以下方法: protected void onPostExecute(String result) { try { JSONArray users = new JSONArray(result); JSONObject user = users.getJSONObject(1); Toast.makeText(
protected void onPostExecute(String result) {
try {
JSONArray users = new JSONArray(result);
JSONObject user = users.getJSONObject(1);
Toast.makeText(MainActivity.this, user.getString("name"), Toast.LENGTH_LONG).show();
jsonList = users;
} catch (JSONException e) {
e.printStackTrace();
}
}
Toast确实会向我显示当前对象的名称,但每当我尝试填充ListView时,都会得到一个NullPointerException
我制作了一个TextView来测试JSON是否也存在,但这里我得到了另一个NullPointerException:
textView.setText(user.getString("name"));
当JSONObject在Toast中运行良好时,为什么它在这里给我一个空指针?就您的代码而言
您正在访问用户对象的第一个元素
您还必须指定列表视图的第一个索引,
您正在访问第一个元素并传递到整个listview
请遵循Listview的基本编程
创建一个包含getter和setter的Bean类,然后用JSON数据填充Bean,并将其用作listView适配器的数据源 发布您的ListView代码和logcat输出,请验证JSON似乎没有问题。XML对象是ListView、TextView、。。正确初始化?现在我说的是TextView,而不是listview json:[{name:Christian Haase,{id:54eda37aa4e01feebaf9c66a,{name:Line Mungaard,{id:54edde9ba4e01feebaf9c66b,{u v:0},{name:Line Mungaard,{id:54edde9ba4e01feebaf9c66b,{u v:0}]您是否确定您的textView或特定的ListView对象在该点上不为null?最明显的是,如果将setText方法放在Toast显示有效值的同一位置。我想到的另一件事是,json结果可能会时不时地有所不同,因此有时不起作用。