【问题标题】:How To Remove Item from Spinner using another spinner如何使用另一个微调器从微调器中删除项目
【发布时间】:2016-08-17 00:09:07
【问题描述】:

我想使用其他微调器删除微调器特定项目,两个微调器都是从字符串数组 string.xml 获取数据,例如如果我从一个微调器中选择 kg,那么 kg 将从其他微调器中删除

【问题讨论】:

  • 两个微调器是否从同一个数组中获取数据?
  • 另外,如果你想要一个动态微调器,你必须直接在你的活动中创建你的数组,因为资源是不可编辑的。
  • 是的,两个微调器都从同一个数组中获取数据
  • 但我也想在项目中添加 n3 以便我使用资源
  • 对不起n<sup>3</sup> 是什么?正如我所说,您不能编辑 xml 数组。您可以做的是在 onCreate 中获取 xml 数组并将其存储到列表中。然后按照我的回答,它应该可以工作

标签: java android eclipse android-studio


【解决方案1】:

这是更新微调器的代码:

List<String> data = new ArrayList<>();
List<String> data2 = new ArrayList<>();
//populate you lists in onCreate

String tempRemovedItem ;


Spinner spinner1 = (Spinner)findViewById(R.id.spinner1);
Spinner spinner2 = (Spinner)findViewById(R.id.spinner2);

ArrayAdapter<String> adapter1 = new ArrayAdapter<>(this,
            android.R.layout.simple_dropdown_item_1line, data);
ArrayAdapter<String> adapter2 = new ArrayAdapter<>(this,
            android.R.layout.simple_dropdown_item_1line, data2);

spinner1.setAdapter(adapter1);
spinner2.setAdapter(adapter2);

spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

           //when item is selected remove it from data2 and update the adapter of the second spinner

           data2.remove(spinner1.getSelectedItem().toString());

           if(tempRemovedItem != null){
              data2.add(tempRemovedItem);
           }

           tempRemovedItem = spinner1.getSelectedItem().toString();
           adapter2.notifyDataSetChanged();


        }

        @Override
        public void onNothingSelected(AdapterView<?> parent) {

        }
    });

【讨论】:

  • 我还想在其他微调器的帮助下将数据添加到微调器,例如如果我在一个微调器中选择重量而不是下面的 data2 数组列表添加公斤、克、克拉,如果我在微调器中选择温度比data2 arraList 添加摄氏度,远高
  • 你可以用我给你的代码来做到这一点,只需获取点击项目的位置并创建一个 if 语句。例如,如果 position = 1,则为适配器设置一个新列表,并通过 notifySetDataChanged 通知适配器
  • 是的,我做到了,我制作了多个适配器并在 if 语句中分配它们
猜你喜欢
  • 1970-01-01
  • 2011-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-16
相关资源
最近更新 更多