У меня есть три счетчика для заполнения доски, класса и темы.На основе выбора доски класс фильтруется, на основании выбора класса имена субъектов фильтруются и отображаются в счетчике.Я работаю с оператором обновления, где список впервые отображается пользователю.При нажатии на элемент списка детали извлекаются и должны быть заполнены в соответствующих текстовых полях.Вышеупомянутые счетчики должны показывать соответствующую доску, класс и имя субъекта на основе сведений
Я могу получить все данные и заполнить заполнитель разделов доски названием доски.Но невозможно заполнить счетчик классов и тем
/**
Retrieves all the classes based on Board name selection
**/
try {
JSONObject jsonObject = new JSONObject(s);
final JSONArray jsonArray = jsonObject.getJSONArray("PopulateMultiListInfoResult");
int length2 = jsonArray.length();
List<String> class_list = new ArrayList<String>(length2);
class_list.add("Select Class");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject1 = jsonArray.getJSONObject(i);
class_list.add(jsonObject1.getString("NAME"));
cboClass.setAdapter(new ArrayAdapter<String>(ManagementCurriculumSetup.this,
android.R.layout.simple_list_item_1, class_list));
cboClass.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
try {
position = position - 1;
iClassID = jsonArray.getJSONObject(position).getString("ID");
/**
Method to populate Subject names based on Board and Class name selection
**/
populateSubjectInfo(iBoardID, iClassID);
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
} catch (JSONException e) {
e.printStackTrace();
}
}
/**
retrieve details based on the list item selected by the user
**/
try {
JSONObject jsonObject = new JSONObject(s);
JSONArray jsonArray = jsonObject.getJSONArray("RetrieveCurriculumDetailsResult");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject1 = jsonArray.getJSONObject(i);
//String sSyllabusDetails = Html.fromHtml(jsonObject1.getString("SYLLABUS_DETAILS")).toString();
txtSectionTitle.setText(jsonObject1.getString("SECTION_TITLE"));
txtSyllabusDetails.setText(jsonObject1.getString(jsonObject1.getString("SYLLABUS_DETAILS")));
txtWeightageFocus.setText(jsonObject1.getString("MARK_FOCUS"));
txtSessionDurationAllocation.setText(jsonObject1.getString("SCHEDULED_DURATION"));
cboBoard.setSelection(getIndex(cboBoard, jsonObject1.getString("BOARD_ID")));
cboClass.setSelection(getIndex(cboClass, jsonObject1.getString("CLASS_NAME")));
cboSubject.setSelection(getIndex(cboSubject, jsonObject1.getString("SUBJECT_NAME")));
}
} catch (JSONException e) {
e.printStackTrace();
}
/**
method to pre-populate spinner with a particular value based on list item selection
**/
private int getIndex(Spinner spinner, String myString) {
int index = 0;
for (int i = 0; i < spinner.getCount(); i++) {
if (spinner.getItemAtPosition(i).toString().equalsIgnoreCase(myString)) {
index = i;
break;
}
}
return index;
}
Я могу заполнить только название доски выбранным элементом списка.Имена классов и тем не заполнены