Android - Настройка виджета Spinner Look and Feel - PullRequest
8 голосов
/ 05 июля 2010

Можно ли изменить цвет radio button в виджете блесна Android .По умолчанию он отображает зеленый цвет переключателя.

Мне нужно изменить его на какой-нибудь другой цвет, возможно ли это и как?

1 Ответ

12 голосов
/ 12 января 2011

Я знаю, что это старый вопрос сейчас, но здесь идет ...

Вам нужно будет создать собственную тему и применить ее к действию с помощью спиннера.

Во-первых, вам нужно создать изображения для отмеченных / непроверенных состояний «нового» радио, вы можете просто извлечь данные изображения btn_radio_on.png и btn_radio_off.png из папки (ов) sdk res/drawable-*,Отредактируйте их так, чтобы они выглядели так, как вы хотите (например, измените цвет или что-то еще), и сохраните их в своем проекте.

Затем создайте новый XML-файл в папке res/values и добавьте следующее:

<resources>
    <style name="CustomSpinnerRadioTheme" parent="@android:style/Theme">
        <item name="android:spinnerDropDownItemStyle">@style/EditedRadio</item>
    </style>

    <style name="EditedRadio" parent="@android:style/Widget.DropDownItem.Spinner">
        <item name="android:checkMark">@drawable/edited_radio</item>
    </style>
</resources>

Затем создайте еще один XML-файл в res/drawable с именем edited_radio.xml ион должен содержать следующее:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="false" android:drawable="@drawable/btn_radio_off" />
    <item android:state_checked="true" android:drawable="@drawable/btn_radio_on" />
</selector>

, просто обязательно укажите ваши отредактированные изображения для проверенных состояний.Тогда вам просто нужно применить CustomSpinnerRadioTheme к вашему действию и запустить!

Хороший ресурс, который я нашел, это Применение стилей и тем , особенно дополнительная ссылка на Стили Android (стили.xml) и Темы Android (themes.xml)

...