5

当我在第一个微调器中选择项目(除第一个项目)时,我有两个微调器,它保存在数组中,它在微调器第二个中填充来自 Web 服务的数据。我希望当我再次选择第一个作为微调器标题的数据时,它应该清除微调器第二个中的所有值。我做了所有的把戏,但无能为力。建议我。

我的代码是:

  if(spinner1== 0) {
        spinner2List.clear();
        ArrayAdapter<String> adapterEmpty = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, spinner2List);
        adapterEmpty.setDropDownViewResource(R.layout.spinner_layout);

        // Apply the adapter to the spinner
        spinner2.setAdapter(adapterEmpty);
    }

谢谢。

4

3 回答 3

16

当您选择一个第一个微调器项目时,您可以在第一个微调器 onItemSelected() 方法中使用下面的代码来清除您的第二个微调器。

 Spinner2.setAdapter(null)
于 2013-02-05T11:33:06.410 回答
4

您已调用spinner2List.clear();但尚未通过 usingnotifyDataSetChanged();方法通知适配器。

于 2013-02-05T11:35:30.217 回答
2

以下代码用于清除微调器值:-

ArrayList<String> allAreaNames;

                allAreaNames.clear();

                ArrayAdapter<String> AreaAdapter = new ArrayAdapter<String>
                        (context, android.R.layout.simple_spinner_item, allAreaNames);


                AreaAdapter.setDropDownViewResource
                        (android.R.layout.simple_spinner_dropdown_item);

                AreaSpinner.setAdapter(AreaAdapter);
于 2019-08-13T13:51:49.263 回答