У меня есть набор Radio Buttons
в RadioGroup
. Я создал StateList Drawable
, чтобы указать состояние каждой кнопки. Кнопки работают правильно в том, что выбор любого из них будет начинаться с прослушивателей и т. Д. Однако StateList Drawable
не работает. Вот соответствующий материал:Пользовательская радиостанция со списком состояний, не меняющаяся
Layout XML с помощью кнопки:
<RadioButton
android:id="@+id/score4"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginBottom="5dp"
android:button="@drawable/score_button_selector" />
score_button_selector XML:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true"
android:drawable="@drawable/score_bg_2c_on" />
<item android:state_checked="false"
android:drawable="@drawable/score_bg_2c_off"/>
</selector>
score_bg_2c_off
является синяя кнопка:
и score_bg_2c_on
является Gree п кнопка:
Синяя кнопка отображается правильно, но при выборе (нажата/щелкнул), зеленый один должен появиться вместо этого. Как я уже сказал, операция кнопки в порядке, я правильно ее понимаю и т. Д. - просто не сменное изменение. Я попробовал state_selected
вместо state_checked
без лучших результатов.
Любые идеи, почему это не работает, как мне бы хотелось?
Спасибо.
Вот еще несколько данных ... Я достал android:button=
и положил его на android:background=
.
<RadioButton
android:id="@+id/score4"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginBottom="5dp"
android:background="@drawable/score_button_selector" />
Таким образом появляется переключатель по умолчанию. Эта кнопка показывает, когда она выбрана (синий внутри кнопки), но фон никогда не изменяется. Я знаю, что он видит score_button_selector
, потому что он показывает кнопку с голубым фоном, которая определяется только в drawable.
Я предполагаю, что вы хотели иметь 'android: button' в последней строке, а не' android: background'. В любом случае, ... нет. – ddk
Я обновил свой код. Нет, последняя строка будет фоновой. Вы должны сделать кнопку прозрачной. –
Еще без радости. Кнопка прозрачная, но фон никогда не изменяется. – ddk