Android Change spinner нажал цветную тему Light Holo

Я работаю над приложением для Android Tablet. Я создал настраиваемую панель действий, и мне удалось оформить ее так, как я хочу, за исключением счетчиков.

Моя основная тема расширяет Holo Light, что означает, что когда я нажимаю на счетчик, он становится синим. Как мне это изменить?




Ответы (1)


Укажите собственный стиль для android:actionDropDownStyle в вашей теме, которая сама имеет android:background для вашего пользовательского списка состояний.

Вот тот, который указан по умолчанию:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="false"
          android:drawable="@drawable/spinner_ab_disabled_holo_dark" />
    <item android:state_pressed="true"
          android:drawable="@drawable/spinner_ab_pressed_holo_dark" />
    <item android:state_pressed="false" android:state_focused="true"
          android:drawable="@drawable/spinner_ab_focused_holo_dark" />
    <item android:drawable="@drawable/spinner_ab_default_holo_dark" />
</selector>

Вам нужно будет предоставить свои собственные изображения для каждого из этих состояний (а также для mdpi, hdpi и xhdpi).

Вы можете изменить те, которые поставляются с платформой, чтобы облегчить себе жизнь. Найдите SDK/platforms/platform-14/data/res/ в папках drawable-mdpi, drawable-hdpi и drawable-xhdpi.

person Jake Wharton    schedule 28.01.2012
comment
Я добавил следующее в свою тему ‹item name=android:actionDropDownStyle›@style/MySpinner‹/item› Затем создал ‹!-- стиль элементов в меню переполнения --› ‹style name=MySpinner › ‹item name=android :background›@drawable/spinner_background‹/item› ‹/style› Похоже, это не сработало. При добавлении spin_background в качестве фона для счетчика в макете xml он работает. Так что я могу исключить проблему с возможностью рисования. - person bencallis; 29.01.2012