如何从 Android 中的微调器中删除 4 和 5 索引

How to remove 4 and 5 indexes from the spinner in Android

您好,在下面的代码中,我实现了一个微调器。从 Api 我正在获取字符串并添加到数组列表,然后显示一个微调器。

现在要从微调器列表中删除 4 和 5 索引,然后要显示微调器。

它给我一个错误

java.lang.IndexOutOfBoundsException:索引:4,大小:1

   if (name.equals("sales_stage")) {
                                            TypeDetails typeDetails = desFields1.getType();

                                            ArrayList<PickListValues> pickListValues = typeDetails.getPicklistValues();
                                            for (PickListValues pickListValues1 : pickListValues) {
                                                value = pickListValues1.getValue();
                                                label=pickListValues1.getLabel();

                                                sales_stagenames.add(value);
                                                PickListValues pickListValues2 = new PickListValues(value, label);
                                                pickListSalesStage.add(pickListValues2);
                                                final ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(
                                                        getContext(),R.layout.spinner_item,sales_stagenames){// dataAdapter.setDropDownViewResource(android.R.borderdashboard.simple_spinner_dropdown_item);
                                                    //spinnerlocation.setAdapter(dataAdapter);


                                                    @Override
                                                    public boolean isEnabled(int position){
                                                        if(position == 0)
                                                        {
                                                            // Disable the first item from Spinner
                                                            // First item will be use for hint
                                                            // spinnerlocation.setPrompt("Select");


                                                            return false;
                                                        }
                                                        else
                                                        {
                                                            return true;
                                                        }
                                                    }
                                                    @Override
                                                    public View getDropDownView(int position, View convertView,
                                                                                ViewGroup parent) {
                                                        View view = super.getDropDownView(position, convertView, parent);
                                                        TextView tv = (TextView) view;

                                                        if(position+1 == 0){
                                                            // Set the hint text color gray
                                                           // spinnerdepartment.setVisibility(View.GONE);
                                                           // spinnerdepartment.setVisibility(View.GONE);
                                                            tv.setTextColor(Color.GRAY);
                                                        }
                                                        else {
                                                            tv.setTextColor(Color.BLACK);

                                                        }
                                                        return view;
                                                    }
                                                };
                                                // ArrayAdapter<String> dataAdapter = new ArrayAdapter<>(getContext(), android.R.borderdashboard.simple_spinner_item, taskTypes);

                                                spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                                                spinnersalesstage.setAdapter(spinnerArrayAdapter);
                                                sales_stagenames.remove(4);
                                               spinnerArrayAdapter.notifyDataSetChanged();



                                                        @Override
                                                        public boolean isEnabled(int position){
                                                            if(position == 0)
                                                            {
                                                                // Disable the first item from Spinner
                                                                // First item will be use for hint
                                                                // spinnerlocation.setPrompt("Select");


                                                                return false;
                                                            }
                                                            else
                                                            {
                                                                return true;
                                                            }
                                                        }
                                                        @Override
                                                        public View getDropDownView(int position, View convertView,
                                                                                    ViewGroup parent) {
                                                            View view = super.getDropDownView(position, convertView, parent);
                                                            TextView tv = (TextView) view;

                                                            if(position+1 == 0){
                                                                // Set the hint text color gray
                                                               // spinnerdepartment.setVisibility(View.GONE);
                                                               // spinnerdepartment.setVisibility(View.GONE);
                                                                tv.setTextColor(Color.GRAY);
                                                            }
                                                            else {
                                                                tv.setTextColor(Color.BLACK);

                                                            }
                                                            return view;
                                                        }
                                                    };
                                                    // ArrayAdapter<String> dataAdapter = new ArrayAdapter<>(getContext(), android.R.borderdashboard.simple_spinner_item, taskTypes);

                                                    spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                                                    spinnersalesstage.setAdapter(spinnerArrayAdapter);
       }

尝试这样的事情:

value = pickListValues1.getValue();
 label=pickListValues1.getLabel();
 sales_stagenames.add(value);
 ArrayList<String> salesstages=new ArrayList<>();
for(int i=0;i<= sales_stagenames.size();i++){
if((i!=4)&&(i!=5))                                                      salesstages.add(sales_stagenames.get(i));}