ON / OFF 상태 대신 두 개의 이미지를 사용하여 토글 버튼을 만들어야합니다.
꺼짐 상태에서 배경 이미지를 설정했지만 배경 이미지를 사용하는 동안 OFF 텍스트를 제거 할 수 없습니다.
그리고 나는 토글 버튼을 클릭하여 ON 상태에 다른 이미지를 설정할 수 없습니다 🙁 나는 안드로이드가 처음입니다.이 문제에서 벗어나는 데 도움이되기를 바랍니다.
답변
이 작업을 수행:
<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;
}
}
});