[英]Android java: button's color toggling 'line' @ bottom doesn't toggle properly
[英]Toggling the color of a button's drawable and text in java
我需要一个Button或TextView,当单击它以显示是否打开时,它会更改其CompoundDrawable(顶部)和Text的颜色。
我尝试了不同的方法,但我认为最好的方法是创建一个扩展Button或TextView的新Java文件。 我在想这样的事情:
public class CustomButton extends android.support.v7.widget.AppCompatButton {
int colorOn;
int colorOff;
boolean isOn = false;
public CustomButton(Context context) {
super(context);
}
public CustomButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CustomButton(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
private void onButtonClicked(){
if(isOn){
setCompoundDrawablesColors(colorOn);
setTextColor(colorOn);
} else {
setCompoundDrawablesColors(colorOff);
setTextColor(colorOff);
}
isOn = !isOn;
}
}
我的问题是:
实际上,您可以自定义绘制自己的视图,可以通过dispatchTouchEvent(MotionEvent事件)来侦听键状态调用OnClickListener,这将更容易实现。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.