3

現在、スピナーを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 カレンダーにはそのようなコントロールがあることに注意してください。

ここに画像の説明を入力

どうすればこれを達成できますか?

4

2 に答える 2

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" />
于 2012-09-28T02:04:27.600 に答える
1

スピナーでそれを機能させるのは難しいと思います。スピナーの概念は、ユーザーが選択できるアイテムのリストを表示することを期待するものです。

Spinner の代わりに、DatePicker を含むカスタム ダイアログをポップアップする Button を使用する必要があると思います。必要に応じて、選択した日付をボタンのテキストとして表示するように正しく配線することもできます。

于 2012-08-29T03:11:52.480 に答える