Я создаю android приложение, которое отображает статистику COVID19 для Индии, я получаю статистику в формате JSON из https://api.covid19india.org/data.json, этот API также содержит данные отдельных состояний
Ниже приведен фрагмент массива Json (содержит json объектов, представляющих каждое состояние), который я запрашиваю

как из Сейчас я отображаю все данные (все состояния) за один раз на моем экране, однако я хочу дать название состояния в качестве входных данных и отображать статистику только этого состояния. Например. на рисунке ниже вместо образца я хочу написать название штата, и статистика этого состояния должна отображаться при нажатии кнопки.

Вот код mainActivity. java, я использую библиотеку залпов для извлечения данных из API
public class MainActivity extends AppCompatActivity {
private TextView result;
private RequestQueue mq;
public String value;
int flag = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
result = findViewById(R.id.textView4);
Button parse = findViewById(R.id.button);
mq = Volley.newRequestQueue(this);
EditText text = (EditText)findViewById(R.id.state_ip);
value = text.getText().toString();
parse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
jsonParse(value);
**//How do i pass 'value' i.e the state name entered by user to jsonParse**
}
});
}
private void jsonParse(final String value) {
Log.d("val_state",value);
String url = "https://api.covid19india.org/data.json";
JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET, url, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
JSONArray jsonArray = response.getJSONArray("statewise");
for (int i = 0; i < jsonArray.length(); i++)
{
JSONObject st = jsonArray.getJSONObject(i);
String statename = st.getString("state");
String active = st.getString("active");
String confirmed = st.getString("confirmed");
String deaths = st.getString("deaths");
String recovered = st.getString("recovered");
if(statename.equals(value))
{
flag= 1;
}
statename = "State : " + statename;
active = "Active Cases : " + active;
confirmed = "Confirmed Cases : " + confirmed;
deaths = "Total Deaths : " + deaths;
recovered = "Total Recovered : " + recovered;
if(flag==1)
{
flag=0;
result.append(statename + "\n" + String.valueOf(active) + "\n" + String.valueOf(confirmed) + "\n" + String.valueOf(deaths) + "\n" + String.valueOf(recovered) + "\n\n\n");
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
}
});
mq.add(request);
}
}
Здесь я хочу передать введенное пользователем значение состояния методу jsonParse ( ) так что я проверяю имя состояния с полученными данными JSON и добавляю его в TextView, но когда я делаю это и пытаюсь записать значение в метод jsonParse (), я ничего не получаю, почему это происходит, как реализовать вышеописанное?