如何在可展开的列表视图中显示JSON解析的数据?
问题描述:
我正在使用AndroidHive方法来显示自定义可展开列表视图。它插入了一个静态数据。但在我的应用程序,我收到一个JSON数据,我无法解析它的方式来显示它在可扩展列表视图。如何在可展开的列表视图中显示JSON解析的数据?
JSON数据我收到的
{
"success": 1,
"Message": "User exist",
"category": [{
"major_item_id": "1",
"Major_item_name": "Cement"
}, {
"major_item_id": "15",
"Major_item_name": "Wire"
}],
"subcategory": [{
"major_item_id": "1",
"name_item":"abc1"
}, {
"major_item_id": "1",
"name_item":"pqrs2"
}, {
"major_item_id": "15",
"name_item":"lmn"
}, {
"major_item_id": "15",
"name_item":"xyz"
}]}
我想是什么格式的可扩展列表视图:
Cement //listHeader
-abc1 // child items
-pqrs2 // child items
Wire
-lmn
-xyz
答
的JSON文件包含许多组件。以下是定义,方括号([)的JSON文件的组件及其描述
Array([)
在JSON文件中的表代表一个JSON阵列
Objects({)
在JSON文件,大括号( {)表示JSON对象
Key
JSON对象包含的键只是一个字符串。键/值对组成一个JSON对象
Value
每个键有可能是字符串,整数或双e.t.c
每个实现根据您已经使用JSON格式是不同的值。你可以在网上很容易找到太多的例子。 http://www.tutorialspoint.com/android/android_json_parser.htm
+0
我知道如何解析数据,但我无法将水泥与abc1,pqrs2链接,以及如何使用androidhive给出的方法显示它们 - 上面给出的链接 –
答
您可以使用GSON到JSON转换为对象这样的:
Gson gson = new Gson();
Type listType = new TypeToken<YourObject>() {}.getType();
YourObject obj = gson.fromJson(getCurrentChat(), listType);
一旦你有了正确的对象,你可以使用相应的值更新您的ExpandableListView。
你有什么问题?您无法将JSON解析为他们在您发布的链接中使用的'List'和'HashMap >'。 –
Apostrofix