单选按钮:用内置的android按钮替换库存圆形按钮

时间:2010-12-30 22:51:25

标签: android

如何创建一组单选按钮,其中的按钮看起来像是很棒的按钮

这是我到目前为止所发现的:

单选按钮的外观可以用4个drawable替换。网上有一个例子。


这对我不起作用。所以我想出了两个糟糕的选择:

(A)使用股票按钮 - 在java中使用无线电逻辑。 毛。

(B)将按钮渲染为drawable,在运行时设置它们。 布拉赫

非常感谢任何想法。

(这是我的第一个问题。希望它的配方很好。)

1 个答案:

答案 0 :(得分:2)

使用RadioButton并指定android:button="@drawable/mybutton",其中res / drawable / mybuton.xml包含自定义<selector>

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

    <item android:state_checked="true" android:state_pressed="true"
          android:drawable="@drawable/btn_radio_on_pressed" />
    <item android:state_checked="false" android:state_pressed="true"
          android:drawable="@drawable/btn_radio_off_pressed" />

    <item android:state_checked="true" android:state_focused="true"
          android:drawable="@drawable/btn_radio_on_selected" />
    <item android:state_checked="false" android:state_focused="true"
          android:drawable="@drawable/btn_radio_off_selected" />

    <item android:state_checked="false" android:drawable="@drawable/btn_radio_off" />
    <item android:state_checked="true" android:drawable="@drawable/btn_radio_on" />
</selector>

这实际上是原始selector for RadioButton