在XML中设置微调器模式

时间:2011-04-10 17:53:47

标签: android xml spinner

在代码中定义微调器时,您可以将模式设置为“对话框”或“下拉列表”:

  

Spinner(Context context,int mode)   使用给定的上下文主题和提供的显示选项的模式构造一个新的微调器。

但是在XML中定义布局时我找不到这个选项。我是否只是想念它,或者这在XML中是不可能的?

4 个答案:

答案 0 :(得分:16)

从API级别11开始,您可以使用

<Spinner style="@android:style/Widget.Spinner.DropDown" ... />

<Spinner android:spinnerMode="dropdown" ... />

答案 1 :(得分:1)

不,根据发现here的参考文献,这是不可能的。没有列出相应的XML属性。像为timepicker设置24h模式一样,这在XML中是不可能的。

答案 2 :(得分:1)

如果你使用的是10级或更低级别的API,只需从你的XML文件中删除android:spinnerMode和style。

答案 3 :(得分:1)

使用SpinnerMode Xml属性并使用API​​等级11或更高版本。

你需要为微调器创建自己的样式。

1]将themes.xml文件放入values文件夹:

<style name="spinner_style" >
    <item name="spinnerMode">dialog</item>
</style>

2]将themes.xml文件放入values-v11文件夹和values-v14文件夹:

<style name="spinner_style" >
    <item name="android:spinnerMode">dialog</item>
</style>

3]然后在Spinner xml标记

中使用您的样式
<Spinner android:id="@+id/my_spinner"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        style="@style/spinner_style"/>