[英]Android: Button Onclick event
我想將顏色更改回默認顏色。
如果假設我單擊按鈕; 按鈕的顏色必須改變。 如果我再次點擊相同的按鈕......顏色必須重新設置為默認值。
我怎樣才能做到這一點......
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (clicked) {
holder.b1.setBackgroundResource(R.drawable.like_icon_hover);
} else {
holder.b1.setBackgroundResource(R.drawable.like_icon);
}
clicked = false;
}
});
試試這種方式
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (clicked) {
holder.b1.setBackgroundResource(R.drawable.like_icon_hover);
clicked = false;
} else {
holder.b1.setBackgroundResource(R.drawable.like_icon);
clicked = true;
}
}
});
或者在drawable/selector.xml
創建一個Selector
drawable/selector.xml
如:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@drawable/like_icon_hover" />
<item
android:state_pressed="false"
android:drawable="@drawable/like_icon" />
</selector>
並將此Selector
設置為Button
的Background
,如:
android:background="@drawable/selector"
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (clicked) {
holder.b1.setBackgroundResource(R.drawable.like_icon_hover);
} else {
holder.b1.setBackgroundResource(R.drawable.like_icon);
}
clicked = !clicked;
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.