我正在尝试更改点击按钮的外观,例如切换。 当我点击它时我希望它的文字和颜色改变,但它的文字就消失了。 这是我点击它时btn的代码:
public void ToggleBuffer(View view) {
if(this.toggleBufferIsActive){
this.btn.setText("Start Buffer");
this.btn.setTextColor(0x0000CD);
this.btn.invalidate();
this.toggleBufferIsActive = false;
}
else{
this.btn.getBackground().setColorFilter(0xFFBBAA00, PorterDuff.Mode.MULTIPLY);
this.btn.setText("Stop Buffer");
this.btn.setTextColor(0xff0000);
this.btn.invalidate();
this.toggleBufferIsActive = true;
}
}
谁能告诉我这里做错了什么? 非常感谢提前
答案 0 :(得分:0)
尝试这样,
private int START_BUFFER = 0; private int STOP_BUFFER = 1;
首先写btn.setTag(START_BUFFER);在btn初始化之后
public void ToggleBuffer(View view) {
if(((Button) view).getTag() = 0){
this.btn.setText("Start Buffer");
this.btn.setTextColor(0x0000CD);
((Button) view).setTag(STOP_BUFFER);
}
else{
this.btn.getBackground().setColorFilter(0xFFBBAA00, PorterDuff.Mode.MULTIPLY);
this.btn.setText("Stop Buffer");
this.btn.setTextColor(0xff0000);
((Button) view).setTag(START_BUFFER);
}
}
答案 1 :(得分:0)
您应该使用格式0xAARRGGBB而不是0xRRGGBB。
如果使用0xFF0000,它将被读取为0x00FF0000,这是透明的。
只需输入0xFFFF0000即可。