こんにちは、最後の質問についてよくわからなかったので、自分で解決策を見つけたかもしれません。一度クリックすると変更された bg イメージを保持し、ボタンの残りの部分をデフォルトの bg イメージに戻す、相互に排他的なボタンのセットを探していました。ボタンをラジオボタンに置き換え、その親をラジオグループに設定することで、これを行うことができたようです。さらに、xml ドローアブル セレクターを変更して、state_checked = "true" アイテムを含めるだけです。ただし、ボタンを削除しているときに、カスタム bg to radio ボタンにアラインされたテキストを含めようとして問題が発生しています ( android:button="@nul" を設定)。これはアライメントを台無しにするようです。何かご意見は?
レイアウト
<RadioGroup android:id="@+id/options" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingTop="@dimen/option_button_layout_top_margin" android:paddingBottom="@dimen/option_button_layout_bottom_margin">
<RadioButton android:id="@+id/option_skill" android:text="@string/option_skill" style="@style/option_button"/>
<RadioButton android:id="@+id/option_item" android:text="@string/option_item" style="@style/option_button" android:layout_marginLeft="@dimen/option_button_spacing"/>
</RadioGroup>
style.xml
<style name='option_button'>
<item name="android:layout_width">@dimen/option_button_size</item>
<item name="android:layout_height">@dimen/option_button_size</item>
<item name="android:button">@null</item>
<item name="android:background">@drawable/option_button</item>
<item name="android:onClick">option_onclick</item>
</style>
ドローアブル
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:constantSize="true"
android:dither="false"
android:variablePadding="false">
<item android:drawable="@drawable/option_button_yellow" android:state_pressed="true"/>
<item android:drawable="@drawable/option_button_yellow" android:state_checked="true"/>
<item android:drawable="@drawable/option_button_white"/>
</selector>