1

我有一个装有三件物品的微调器

<string-array name="menuitems">
    <item>one</item>
    <item>two</item>
    <item>three</item>
</string-array>

然后我像这样设置我的微调器

 Spinner spinner = (Spinner) findViewById(R.id.spinner1);
 ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
         R.array.menuitems,  R.layout.spinnerstyle);

 adapter.setDropDownViewResource(R.layout.spinnerdropdownstyle);

 spinner.setAdapter(adapter);

微调器显示如下

我的问题是这个微调器我不想显示我想要的选定项目

显然,如果选择了两个,下拉列表中只会出现一个和三个。我确实搜索了这个,但无法找到一种方法来获得这种影响我尝试在选择时更改 menuitems 数组,但如果我从那里删除该项目,它就不会在选择中绘制它。我认为有一个相当简单的方法来获得这种影响。

谢谢你的帮助。

4

2 回答 2

0

编写一个自定义SpinnerAdapter,它返回菜单中的项目,不包括所选项目。

于 2013-02-14T15:58:12.713 回答
0

您可以尝试将 xml 中的提示设置为“One”,如下所示:

<Spinner android:id="@+id/spinnerTest"  
 android:layout_marginLeft="50px"
 android:layout_width="fill_parent"                  
 android:drawSelectorOnTop="true"
 android:layout_marginTop="5dip"
 android:prompt="@string/SelectOne"
 android:layout_marginRight="30px"
 android:layout_height="35px" 
/> 

然后您应该覆盖 onItemClick 方法并将变量的文本设置为“未选择任何内容”。

于 2013-02-14T15:58:49.670 回答