Note that there are some explanatory texts on larger screens.

plurals
  1. POerror occur when i select an item again in 1st spinner then the related data do not parsed in 2nd spinner means it does'nt refresh
    primarykey
    data
    text
    <p>I have 3 spinners that use data parsed from a web service. When I select an item from 1st spinner then the 2nd spinner will present related data that was parsed.</p> <p>But when I select an item again in 1st spinner then the related data is not parsed in 2nd spinner, so it doesn't refresh.</p> <p>Can you help solving this issue? Thanks in advance.</p> <pre><code> country_spinner.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView&lt;?&gt; parent, View view, int position, long id) { int item=country_spinner.getSelectedItemPosition(); if(item!=0) { String selected1=country_spinner.getItemAtPosition(position).toString(); System.out.println(selected1); progressDialog=ProgressDialog.show(getParent(), "", "Loading..."); new StateTask().execute(); } adapter1.notifyDataSetChanged(); } @Override public void onNothingSelected( AdapterView&lt;?&gt; arg0) { // TODO Auto-generated method stub } }); </code></pre> <p>2nd spinner</p> <pre><code> state_spinner.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView&lt;?&gt; parent, View view, int position, long id) { int item=state_spinner.getSelectedItemPosition(); // String sate=state_spinner.getSelectedItem().toString(); if(item!=0) { String selected=state_spinner.getItemAtPosition(position).toString(); System.out.println(selected); city_spinner.setEnabled(false); progressDialog=ProgressDialog.show(getParent(), "", "Loading..."); new CityTask().execute(); } adapter2.notifyDataSetChanged(); } @Override public void onNothingSelected( AdapterView&lt;?&gt; arg0) { // TODO Auto-generated method stub } }); </code></pre> <p><strong>StateTask</strong></p> <pre><code> public class StateTask extends AsyncTask&lt;String, String, String&gt;{ @Override protected String doInBackground(String... arg0) { //Creating JSON Parser instance////////// JSONParser jParser=new JSONParser(); //Getting JSON String from URL.............. JSONObject jObject=jParser.getJSONFromUrl(URL); try { jsonArray=jObject.getJSONArray(TAG_STATES); //final String[] country_array_spinner = new String[jsonArray.length()]; for (int i=0; i&lt;jsonArray.length(); i++) { //country_array_spinner[i]=jsonArray.getJSONObject(i).getString(TAG_STATE); adapter1.add(jsonArray.getJSONObject(i).getString(TAG_STATE)); } } catch(JSONException e){ e.printStackTrace(); } return null; } @Override protected void onPostExecute(String result) { state_spinner.setEnabled(true); state_spinner.setAdapter(adapter1); progressDialog.dismiss(); super.onPostExecute(result); } } </code></pre> <p><strong>CityTask</strong></p> <pre><code>public class CityTask extends AsyncTask&lt;String, String, String&gt;{ @Override protected String doInBackground(String... arg0) { //Creating JSON Parser instance////////// JSONParser jParser=new JSONParser(); //Getting JSON String from URL.............. JSONObject jObject=jParser.getJSONFromUrl(URLs); try { String sate=state_spinner.getSelectedItem().toString(); jsonArray=jObject.getJSONArray(TAG_CITIES); //final String[] country_array_spinner = new String[jsonArray.length()]; for (int i=0; i&lt;jsonArray.length(); i++) { JSONObject e=jsonArray.getJSONObject(i); String ab=e.getString(TAG_STATE); Log.v(ab, "hgdsagds"); if(ab.contains(sate)){ adapter2.add(jsonArray.getJSONObject(i).getString(TAG_CITY)); } //country_array_spinner[i]=jsonArray.getJSONObject(i).getString(TAG_STATE); } } catch(JSONException e){ e.printStackTrace(); } return null; } @Override protected void onPostExecute(String result) { city_spinner.setEnabled(true); city_spinner.setAdapter(adapter2); progressDialog.dismiss(); super.onPostExecute(result); } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload