【发布时间】:2016-06-30 17:30:55
【问题描述】:
我在数组中得到 2,3&4 个字符串(值),但我无法在 textview 中设置值。我在 textview 中只得到 4 个同样重复的值。请在下面告诉我如何处理 this.JSON:
{
results: [
{
types: [
"sublocality_level_3",
"sublocality",
"political"
]
},
{
types: [
"point_of_interest",
"establishment"
]
},
{
types: [
"travel_agency",
"point_of_interest",
"establishment"
]
},
{
types: [
"point_of_interest",
"establishment"
]
},
{
types: [
"store",
"point_of_interest",
"establishment"
]
},
{
types: [
"dentist",
"health",
"point_of_interest",
"establishment"
]
},
{
types: [
"clothing_store",
"store",
"point_of_interest",
"establishment"
]
},
{
types: [
"point_of_interest",
"establishment"
]
},
]
}
编写我正在尝试的代码:
try {
object = new JSONObject(url);
JSONArray array = object.getJSONArray("results");
for (int i = 0; i < array.length(); i++){
JSONObject object1 = array.getJSONObject(i);
JSONArray array1 = object1.getJSONArray("types");
for(int j = 0; j < array1.length(); j++){
if (array1.length()==2) {
t1 = array1.getString(0);
t2 = array1.getString(1);
} if (array1.length()==3) {
t1 = array1.getString(0);
t2 = array1.getString(1);
t3 = array1.getString(2);
} if (array1.length()==4) {
t1 = array1.getString(0);
t2 = array1.getString(1);
t3 = array1.getString(2);
t4 = array1.getString(3);
}
}
getterSetter.setT1(t1);
getterSetter.setT2(t2);
getterSetter.setT3(t3);
getterSetter.setT4(t4);
list.add(getterSetter);
adapter = new GooglePlacesAdapter(GooglePlace.this,list);
listView.setAdapter(adapter);
}
} catch (JSONException e) {
e.printStackTrace();
}
【问题讨论】:
-
您面临的问题是什么?
-
我无法获取数组列表类型为 2 和 3 的字符串
-
重新编辑您的问题。您的 JSON 文件无效。 Please, read this link first