目前,我有dialog
模式的微调器。
<Spinner
android:spinnerMode="dialog"
android:id="@+id/genderSpinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:entries="@array/gender_array"
android:prompt="@string/gender_prompt" />
它将显示类似这样的内容
但是,有时候,我希望控制要显示的对话框类型。例如,我想在单击微调器时显示带日期选择器的对话框。
请注意,Google日历确实有这样的控件。
我可以知道如何实现这一目标吗?
答案 0 :(得分:22)
不要使用Spinner,而是使用TextView,并为其安装点击监听器。
为了使TextView看起来像Spinner,这是技术
<TextView
android:id="@+id/date"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.72"
android:text="Aug 20, 2012"
style="@android:style/Widget.Holo.Light.Spinner" />
或
<TextView
android:id="@+id/date"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.72"
android:text="Aug 20, 2012"
style="@android:style/Widget.Holo.Spinner" />
答案 1 :(得分:1)
我认为你在使用Spinner工作时会遇到麻烦。 Spinner的概念是这样的,它期望显示项目列表供用户选择。
我认为你应该使用一个Button来弹出一个包含DatePicker的自定义对话框,而不是Spinner。您甚至可以正确连接它以将所选日期显示为按钮上的文本。