我想在用户触摸按钮时交替背景和文本颜色属性。详细地说,我希望用户触摸按钮,然后背景和文本颜色会发生变化,当用户再次触摸时,按钮功能会恢复到初始值。这是我的代码:
fees.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
SharedPreferences.Editor editor=sharedPref.edit();
editor.putBoolean("feesIn",!feesIn);
editor.apply();
if(sharedPref.getBoolean("feesIn",false)){
fees.setBackgroundColor(Color.parseColor("#515de1"));
fees.setTextColor(Color.WHITE);
}else{
fees.setBackgroundColor(Color.WHITE);
fees.setTextColor(Color.parseColor("#515de1"));
}
return false;
}
});
当我第一次触摸时,按钮功能会像我希望的那样发生变化,但第二次没有任何反应。
试试这个,boolean variable
当它命中时改变。试试这个,让我知道它是否有效。
fees.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
if(sharedPref.getBoolean("feesIn",false)){
fees.setBackgroundColor(Color.parseColor("#515de1"));
fees.setTextColor(Color.WHITE);
sharedPref.setBoolean("feesIn",true);
}else{
fees.setBackgroundColor(Color.WHITE);
fees.setTextColor(Color.parseColor("#515de1"));
sharedPref.setBoolean("feesIn",false);
}
return false;
}
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句