我对Android编程比较陌生。我正在尝试创建一个以图像为背景的切换按钮。
<ToggleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:id="@+id/toggleButton"
android:textOn="@string/text_toggle_off"
android:textOff="@string/text_toggle_on"
android:onClick="onToggleClicked"
android:layout_centerVertical="true"
android:background="@drawable/ic_off"/>
当按钮状态改变时,我以编程方式替换图像:
public void onToggleClicked(View view) {
boolean on = ((ToggleButton) view).isChecked();
if (on) {
((ToggleButton) view).setBackground(getResources().getDrawable(R.drawable.ic_on));
} else {
((ToggleButton) view).setBackground(getResources().getDrawable(R.drawable.ic_off));
}
}
问题是ToggleButton的基础层会随着状态而改变颜色。我总是希望基础层是透明的。有没有一种简单的方法可以通过Java代码执行此操作?