9

私はこのようなスタイルのスピナーを持っています

<style name="OptionsSpinner" parent="android:Widget.Spinner">
    <item name="android:background">@drawable/spinner_background</item>
    <item name="android:spinnerMode">dropdown</item>
    <item name="android:dropDownListViewStyle">@style/SpinnerDropdown</item>
</style>

<style name="SpinnerDropdown">
    <item name="android:divider">#ff0000</item>
</style>

ただし、スタイル SpinnerDropDown は何の効果もありません。仕切りは灰色またはデフォルトです。スピナーの仕切りのスタイルを設定するにはどうすればよいですか?

4

1 に答える 1

51

このスタイルをウィジェットのstyleプロパティで直接使用していますか? Spinnerもしそうなら、それが機能していない理由です。アプリケーションの を使用して仕切りのスタイルを設定する必要がthemeあります。

仕切りのスタイルを設定するには、次の操作を行います。

アプリケーションのテーマには、次のものが必要ですitem android:dropDownListViewStyle

<style name="applicationTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:dropDownListViewStyle">@style/mySpinnerStyle</item>
</style>

また、仕切りのスタイル (mySpinnerStyle) は次のように定義されています。

<style name="mySpinnerStyle" parent="android:Widget.ListView.DropDown">
    <item name="android:divider">#00ff00</item>
    <item name="android:dividerHeight">1dp</item>
</style>

これで、緑の仕切りができましたSpinner:)

于 2013-09-13T14:09:43.360 に答える