更改android:drawableLeft on按钮
我有下面的按钮xml,左边有一个图像 我想知道,当用户点击该图像时,如何将其更改为其他图像更改android:drawableLeft on按钮,android,Android,我有下面的按钮xml,左边有一个图像 我想知道,当用户点击该图像时,如何将其更改为其他图像 <Button android:layout_width="0dp" android:layout_height="24dp" android:gravity="center" android:text="Start" android:textStyle="bold" android:id="@+id/startBtn" android:textAllCa
<Button
android:layout_width="0dp"
android:layout_height="24dp"
android:gravity="center"
android:text="Start"
android:textStyle="bold"
android:id="@+id/startBtn"
android:textAllCaps="false"
android:layout_weight="2"
android:drawableLeft="@drawable/ic_keyboard_arrow_up_black_18dp" />
您需要定义一个变量来检查您的按钮是否选中
private int buttonState = 0;
yourButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (buttonState % 2 == 0) {
yourButton.setCompoundDrawables(R.drawable.ic_selected, null, null, null);
} else {
yourButton.setCompoundDrawables(R.drawable.ic_not_selected, null, null, null);
}
buttonState ++;
}
});
使用buttonState变量,您可以跟踪按钮的最后状态。嗨,Emin,谢谢您的回答,但问题是实现切换行为。就像您第一次单击一样,它将更改为图像2,再次单击它将更改回图像1。