Сводка: Я получаю данные от одного Json и отображаю их в RecyclerView. Когда пользователь нажимает на элемент, он должен получить больше данных от другого Json с соответствующим идентификатором «dbn» и отобразить его в другом RecyclerView. За исключением того, что я понятия не имею, как это сделать. Я думаю, что мне нужно проверить, существует ли идентификатор «dbn» первого элемента Json, на который был нажат, и совпадает ли он с идентификатором «dbn» из другого Json. Как я могу проверить, существует ли идентификатор "dbn" и совпадает ли он между Json1 и Json2, когда пользователь нажимает на элемент Json1, чтобы получить данные из Json2?
Я уже успешно создал способ получения данных из первого Json и точного отображения данных с помощью RecyclerView. Вот как я анализирую данные Json с помощью первого Json Url.
MainActivity.java
private void jsonrequest() {
request = new JsonArrayRequest(JSON_SCHOOL_URL, new
Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
JSONObject jsonObject = null;
for (int i = 0; i < response.length(); i++){
try{
jsonObject = response.getJSONObject(i);
School school = new School();
school.setDbn(jsonObject.getString("dbn"));
school.setCity(jsonObject.getString("city"));
school.setName(jsonObject.getString("school_name"));
schoolList.add(school);
} catch (JSONException e) {
e.printStackTrace();
}
}
setupRecyclerView(schoolList);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
requestQueue = Volley.newRequestQueue(MainActivity.this);
requestQueue.add(request);
}
SchoolModelData.java
public class School {
private String dbn;
private String city;
private String name;
public School(){}
public School(String dbn, String city, String name) {
this.dbn = dbn;
this.city = city;
this.name = name;
}
public String getDbn() {
return dbn;
}
public void setDbn(String dbn) {
this.dbn = dbn;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Ожидаемый результат: Пользователь нажимает на элемент Json1, получает данные из Json2, которые совпадают с элементом Json1.
Фактический результат: Пользователь нажимает на элемент Json1, получает все данные от Json2.