安卓循环中的java填充适配器
嗨,我有一个SeparatedListAdapter
我正在尝试填充。我有一个JSONObject
的多个JSONArray
包含JSONObject
人。我试图在JSONObject
之间循环,并为每个JSONArray
创建一个标题。然后,我想在每个JSONArray
之间循环,并向列表中添加一个项目,并获取此人的姓名
目前,它正确地创建了标题,但它循环并不断地从每个JSONObject
向列表中添加每个名称。我只需要它添加来自该JSONArray
的名称
我的JSON如下所示:
{"Contacts": //JSONObject
{
"B"://JSONArray..
[
{"first_name":sdfsdf,"last_name":900,"Number":1368349},
{"first_name":adsdfd,"last_name":1900,"Number":136856},
{"first_name":adglkhdofg,"last_name":600,"Number":136845}
],
"C":[
{"first_name":alkghoi,"last_name":900,"Number":1368349},
{"first_name":wetete,"last_name":1900,"Number":136856},
{"first_name":dfhtfh,"last_name":600,"Number":136845}
]
.....//and so on..
}
}
以下是我目前为止的for循环:
JSONObject singleContactDetails;
contactName = new ArrayList<String>();
accessLevel = new ArrayList<String>();
imageURL = new ArrayList<String>();
JSONArray namesArray = new JSONArray();
SeparatedListAdapter adapter = new SeparatedListAdapter(getActivity());
for (int t=0; t< headerStrings.length(); t++){
JSONArray contactsArray = contacts.getJSONArray(headerStrings.getString(t));
Log.v("CAA", "contactsArray = " + contactsArray.length());
for (int i=0; i<contactsArray.length(); i++){
try {
singleContactDetails = contactsArray.getJSONObject(i);
String name = singleContactDetails.getString("first_name") + " " + singleContactDetails.getString("last_name");
contactName.add(name);
Log.v("CAA", "namesArray" + namesArray);
accessLevel.add(singleContactDetails.getString("access_level"));
imageURL.add(singleContactDetails.getString("filename"));
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
adapter.addSection(headerStrings.getString(t), new ContactArrayAdapter (getActivity(),R.layout.document_cell,contactName,accessLevel,imageURL, bgColor, gilSans));
Log.v("Main", "contacts.getJSONArray(headerStrings.getString(t)) = " + contacts.getJSONArray(headerStrings.getString(t)));
}
它的输出是这样的,因为总共有6个对象,但它将所有对象添加到每个部分:
B
name
name
name
name
name
name
C
name
name
name
name
name
name
我想要实现的是:
B
name
name
name
C
name
name
name
任何帮助都将不胜感激
共 (0) 个答案