gpt4 book ai didi

java - 如何使用 JSON 填充子项微调器?

转载 作者:行者123 更新时间:2023-12-01 18:39:04 26 4
gpt4 key购买 nike

我确信这个问题被问了很多,我在这里发现了一些类似的问题,但没有一个真正解决了我的问题。我希望有人能帮助我。

我想要做的是向用户呈现一个带有城市列表的下拉菜单(旋转器)。 并且在城市列表中有一个子列表。列表和子列表来自 JSON。

用户用户只能选择子列表。

这是我的 JSON:

{
"data":{
"City":[
{
"city_id":112,
"name":"Jakarta",
"school":[
{
"school_id":1,
"parent":112,
"school":"Junior 1"
},
{
"school_id":2,
"parent":112,
"school":"Junior 2"
}
]
},
{
"city_id":113,
"name":"Jakarta",
"school":[
{
"school_id":3,
"parent":113,
"school":"High 1"
}
]
}
]
}
}

这是我的解析代码:

for (int i=0; i<city.length();i++){
JSONObject listcity = city.getJSONObject(i);


JSONArray school = listcity.getJSONArray("school");
for (int j=0; j<school.length(); j++){
JSONObject listschool = school.getJSONObject(j);


VolleyLog.e("List Desa =======>"+listschool);
}

}

预期输出:

Jakarta

  • 初级1
  • 初二

东京

  • 高1

到目前为止,我一直在解析 JSON 数据,如果有人可以展示所描述问题的解决方案或提供任何有助于解决问题的链接,我将不胜感激。

谢谢!

最佳答案

尝试使用这个,您可以通过它获得城市和学校名称。

     try {
JSONObject objects=new JSONObject(object1);
JSONObject data=objects.optJSONObject("data");
JSONArray array=data.optJSONArray("City");
for(int j=0; j<array.length(); j++)
{
String mainSchool=array.optJSONObject(j).optString("name");
Log.e("mainSchool",mainSchool);
JSONArray subList=array.optJSONObject(j).optJSONArray("school");

for(int k=0; k<subList.length(); k++) {
String subItems=subList.optJSONObject(k).optString("school");
Log.e("subSchool",subItems);
}
}
} catch (JSONException e) {
e.printStackTrace();
}

输出为

 E/mainSchool: Jakarta
E/subSchool: Junior 1
Junior 2
E/mainSchool: Jakarta
E/subSchool: High 1

关于java - 如何使用 JSON 填充子项微调器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59979752/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com