How to set Click Listener In Spinner

0
         
How To Set Click Listener In Spinner 


import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

public class MainActivity extends AppCompatActivity {

    private Spinner spinner;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        spinner = findViewById(R.id.spinner);

        // Create an ArrayAdapter using a string array and a default spinner layout
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
                R.array.spinner_items, android.R.layout.simple_spinner_item);

        // Specify the layout to use when the list of choices appears
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        // Apply the adapter to the spinner
        spinner.setAdapter(adapter);

        // Set the item selection listener
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                // Handle the item selection event here
                
                String selectedItem = parent.getItemAtPosition(position).toString();

                // Open the corresponding activity based on the selected item
                if (selectedItem.equals("Activity 1")) {
                    Intent intent = new Intent(MainActivity.this, Activity1.class);
                    startActivity(intent);
                } else if (selectedItem.equals("Activity 2")) {
                    Intent intent = new Intent(MainActivity.this, Activity2.class);
                    startActivity(intent);
                }
                // Add more conditions for other activities if needed
            }

            @Override
            public void onNothingSelected(AdapterView<?> parent) {
                // Do nothing
            }
        });
    }
}
         
 How Preselect The Spinner Items

ArrayList arrayListSprayType = new ArrayList<>();
arrayListSprayType.add("Select Plant Type");
arrayListSprayType.add("Plant");
arrayListSprayType.add("Ratoon");
ArrayAdapter adapterSprayType = new ArrayAdapter<>(context, R.layout.list_item, arrayListSprayType);
plot_type.setAdapter(adapterSprayType);

// Preselect "Plant" in the spinner
int preselectedPosition = 1; // Index of "Plant" in the arrayListSprayType
plot_type.setSelection(preselectedPosition);

plot_type.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    // Rest of your code...
});

         
 How Preselect Between The Big List

ArrayList arrayListSprayType = new ArrayList<>();
arrayListSprayType.add("Select Plant Type");
arrayListSprayType.add("Plant");
arrayListSprayType.add("Ratoon");

String CANE_TYPE = "Plant";

int preselectedPosition = -1;

// Find the position based on the matching value
for (int i = 0; i < arrayListSprayType.size(); i++) {
    if (arrayListSprayType.get(i).equals(CANE_TYPE)) {
        preselectedPosition = i;
        break;
    }
}

// Set the preselected position if found
if (preselectedPosition != -1) {
    ArrayAdapter adapterSprayType = new ArrayAdapter<>(context, R.layout.list_item, arrayListSprayType);
    plot_type.setAdapter(adapterSprayType);
    plot_type.setSelection(preselectedPosition);
}

plot_type.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    // Rest of your code...
});

         
 Spinner data set in Api

    class GETDISEASE extends AsyncTask {

        String Content = null;
        private ProgressDialog dialog = new ProgressDialog(context);



        @Override
        protected void onPreExecute() {
            // TODO Auto-generated method stub
            super.onPreExecute();
            dialog = ProgressDialog.show(context, "Please wait", "Please wait while we getting details", true);
            dialog.show();
        }

        @Override
        protected String doInBackground(String... params) {
            try {
                String url = APIUrl.BASE_URL_CANE_DEVELOPMENT + "/GETDISEASE";
                HttpClient httpClient = new DefaultHttpClient();

                List entity = new LinkedList();
                entity.add(new BasicNameValuePair("DIVN", userDetailsModels.get(0).getDivision()));// 22001 // 2
                HttpPost httpPost = new HttpPost(url);
                httpPost.setHeader(HTTP.CONTENT_TYPE, "application/x-www-form-urlencoded");
                httpPost.setEntity(new UrlEncodedFormEntity(entity, "utf-8"));
                ResponseHandler responseHandler = new BasicResponseHandler();
                Content = httpClient.execute(httpPost, responseHandler);
                System.out.println("sdfsdsd : " + Content);
            } catch (Exception e) {
                if (dialog.isShowing())
                    dialog.dismiss();
            }
            return null;
        }


        @Override
        protected void onPostExecute(String sResponse) {
            try {
                if(getpoctypeModelList.size()>0)
                    getpoctypeModelList.clear();

                if (dialog.isShowing())
                    dialog.dismiss();

                JSONObject jsonObject = new JSONObject(Content);
                if (jsonObject.getString("STATUS").equalsIgnoreCase("OK")) {
                    JSONArray jsonArray = jsonObject.getJSONArray("DATA");
                    for (int i = 0; i < jsonArray.length(); i++) {
                        JSONObject object = jsonArray.getJSONObject(i);
                        GETPOCTYPEModel model=new GETPOCTYPEModel();
                        model.setCode(object.getString("Code"));
                        model.setName(object.getString("Name"));
                        getpoctypeModelList.add(model);

                    }

                    ArrayList getPocType = new ArrayList();
                    getPocType.add("All Plots");
                    for (int i = 0; i < getpoctypeModelList.size(); i++) {
                        getPocType.add(getpoctypeModelList.get(i).getCode() + " - " + getpoctypeModelList.get(i).getName());
                    }

                    ArrayAdapter diseffectedTypeList = new ArrayAdapter(context, R.layout.list_item, getPocType);
                    spinner_items.setAdapter(diseffectedTypeList);
                    spinner_items.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                        @Override
                        public void onItemSelected(AdapterView parent, View view, int position, long id) {

                            if (position == 0) {
                                plotTypeSelection = ""; // Change this to "0" for "All Plots"
                            } else {
                                // Subtract 1 from the position to map it to the correct index in getpoctypeModelList
                                int modelIndex = position - 1;
                                if (modelIndex >= 0 && modelIndex < getpoctypeModelList.size()) {
                                    plotTypeSelection = getpoctypeModelList.get(modelIndex).getCode();

                                }
                            }



                        }


                        @Override
                        public void onNothingSelected(AdapterView parent) {

                        }
                    });


                }


            } catch (JSONException e) {

                try {
                  //  new AlertDialogManager().AlertPopUpFinish(context,new JSONObject(Content).getString("MSG"));
                } catch (Exception e1) {
                    e1.getMessage();
                }

            } catch(Exception e){

            }
        }




    }



Post a Comment

0Comments
Post a Comment (0)