ON / OFF状態ではなく、2つの画像を使用してトグルボタンを作成する必要があります。
オフの状態で背景画像を設定しましたが、背景画像を使用している間はオフのテキストを削除できません。
そして、トグルボタンをクリックして別の画像をオン状態に設定することはできません:(私はAndroidの初心者です。皆さんがこの問題から抜け出すのを手伝ってくれることを願っています
ON / OFF状態ではなく、2つの画像を使用してトグルボタンを作成する必要があります。
オフの状態で背景画像を設定しましたが、背景画像を使用している間はオフのテキストを削除できません。
そして、トグルボタンをクリックして別の画像をオン状態に設定することはできません:(私はAndroidの初心者です。皆さんがこの問題から抜け出すのを手伝ってくれることを願っています
これを行う:
<ToggleButton
android:id="@+id/toggle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/check" <!--check.xml-->
android:layout_margin="10dp"
android:textOn=""
android:textOff=""
android:focusable="false"
android:focusableInTouchMode="false"
android:layout_centerVertical="true"/>
ドローアブルフォルダにcheck.xmlを作成します
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected, use grey -->
<item android:drawable="@drawable/selected_image"
android:state_checked="true" />
<!-- When not selected, use white-->
<item android:drawable="@drawable/unselected_image"
android:state_checked="false"/>
</selector>
AkashGのソリューションは私にはうまくいきません。check.xmlをバックグラウンドに設定すると、垂直方向に階層化されます。この問題を解決するには、check.xmlを「android:button」プロパティに設定する必要があります。
<ToggleButton
android:id="@+id/toggle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@drawable/check" //check.xml
android:background="@null"/>
check.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected, use grey -->
<item android:drawable="@drawable/selected_image"
android:state_checked="true" />
<!-- When not selected, use white-->
<item android:drawable="@drawable/unselected_image"
android:state_checked="false"/>
</selector>
あなたはこのようなことを試すことができます。ここで画像ボタンをクリックすると、画像ビューが切り替わります。
holder.imgitem.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
if(!onclick){
mSparseBooleanArray.put((Integer) view.getTag(), true);
holder.imgoverlay.setImageResource(R.drawable.ipad_768x1024_editmode_delete_overlay_com);
onclick=true;}
else if(onclick)
{
mSparseBooleanArray.put((Integer) view.getTag(), false);
holder.imgoverlay.setImageResource(R.drawable.ipad_768x1024_editmode_selection_com);
onclick=false;
}
}
});