当前位置: 首页 > 面试题库 >

如何将JSONArray转换为ListView?

廉宇
2023-03-14
问题内容

我有一个下面的代码-

  1. 通过HttpClient连接到Web服务到PHP文件
  2. 从SQL查询返回结果
  3. 返回格式是一个jArray(一个JSONArray)
for(int i=0; i < jArray.length() ; i++) {
    json_data = jArray.getJSONObject(i);
    int id=json_data.getInt("id");
    String name=json_data.getString("name");
    Log.d(name,"Output");
}

当我查看LogCat时,我看到了查询的所有“名称”,每条记录都被打印出来。我只需要将这些结果插入ListView中即可。我怎样才能做到这一点?

PS-我没有ArrayAdapter的单独类。这可能是原因吗?


问题答案:

如果您只想显示textView的列表,则不需要覆盖任何内容,只需将所有项目添加到arrayList并使用arrayAdapter即可。

将列表视图放入名为android:list的xml中,然后使用要使用的textView创建arrayAdapter。

之后,您要做的就是调用setListAdapter(mArrayAdapter),它应该填充您的列表。

ArrayList<String> items = new ArrayList<String>();
for(int i=0; i < jArray.length() ; i++) {
    json_data = jArray.getJSONObject(i);
    int id=json_data.getInt("id");
    String name=json_data.getString("name");
    items.add(name);
    Log.d(name,"Output");
}

ArrayAdapter<String> mArrayAdapter = new ArrayAdapter<String>(this,  
           android.R.layout.simple_expandable_list_item_1, items));
setListAdapter(mArrayAdapter)

希望这可以帮助!



 类似资料:
  • 问题内容: 基本上我有: 现在,我想将其转换为包含相同信息的。这样我就可以绕过对象,然后在需要时可以从对象中获取所有信息。任何帮助,将不胜感激,谢谢。 问题答案: 通常,Json对象将包含您的值(包括数组)作为其中的命名字段。因此,类似: 在JSON中将是{“ arrayName”:[…]}。

  • 问题内容: 我有这样的回应: 这是我的代码: 如何转换为JSONArray? 问题答案: 像这样:

  • 我已经能够从json字符串中获取json数组,但不知道如何将其放入Hashmap中,其中字符串显示货物类型,整数显示数量。 字符串:

  • 问题内容: 我的方法有问题。 在客户端,我想要一个数组而不是JSON 我怎样才能做到这一点? 客户代码: 我的方法返回,但我想从中提取数字,以便使用这些数字进行计算(例如作为)。 我公开了作为JSONObject的功能。 然后我得到错误:无法从JSONObject转换为int [] 2种其他方式 这次我得到:无法从JSONArray转换为int [] … 反正还是行不通.. 问题答案: 我从来没有

  • 问题内容: 在我的Android项目中,我试图将收到的JSONArray转换为List。借助这个SO答案,我走得更远。我现在有以下代码: 不幸的是,它在最后一行抱怨Gson类型的fromJson(String,Type)方法不适用于参数(JSONArray,Type)。我真的不知道该怎么解决。 有人知道我该怎么解决吗? 问题答案: 如果您在此处看到答案,您会注意到该方法中的第一个参数是(json对

  • 问题内容: 我有以下格式的行: 现在,我要在文件中写入以下内容: 基本上将上面转换成jsonarray? Python中是否有内置方法,库或函数可将数组“转储”到json数组中? 另请注意,我不希望在文件中序列化“ L”。 问题答案: 使用该模块生成JSON输出: 这会将JSON结果直接写入文件(如果文件已经存在,则替换任何先前的内容)。 如果您需要Python本身中的JSON结果字符串,请使用(