我的问题是如何在单击按钮时禁用它,并在单击另一个按钮时再次启用它。例如,如果有4个按钮,当我单击按钮1,它将被禁用,当我单击按钮2,按钮2将被禁用,按钮1将再次启用。
目前,我正在使用此代码,但一旦单击该代码,它就不会启用按钮。
Button.OnClickListener btnOnClickListner = new Button.OnClickListener() {
@Override
public void onClick(View v) {
if (v == btn1) {
if (v.isEnabled()) {
v.setEnabled(false);
}
// my code
} else if (v == btn2) {
if (v.isEnabled()) {
v.setEnabled(false);
}
// my code
} else if (v == btn3) {
if (v.isEnabled()) {
v.setEnabled(false);
}
// my code
} else if (v == btn4) {
if (v.isEnabled()) {
v.setEnabled(false);
}
// my code
}发布于 2016-03-28 08:45:37
试试这个
// Create a global button variable
Button flagButton = null;
Button.OnClickListener btnOnClickListner = new Button.OnClickListener() {
@Override
public void onClick(View v) {
if(flagButton == null)
flagButton = (Button)v;
else
flagButton.setEnabled(true);
v.setEnabled(false);
flagButton = (Button)v;
if (v == btn1)
// my code
else if (v == btn2)
// my code
else if (v == btn3)
// my code
else if (v == btn4)
// my code
}
}发布于 2016-03-28 07:56:06
使用btn2.setEnable(True);
Button.OnClickListener btnOnClickListner = new Button.OnClickListener() {
@Override
public void onClick(View v) {
if (v == btn1) {
if (v.isEnabled()) {
v.setEnabled(false);
btn2.setEnabled(true);
btn3.setEnabled(true);
btn4.setEnabled(true);
}
// my code
} else if (v == btn2) {
if (v.isEnabled()) {
v.setEnabled(false);
btn1.setEnabled(true);
btn3.setEnabled(true);
btn4.setEnabled(true);
}
// my code
} else if (v == btn3) {
if (v.isEnabled()) {
v.setEnabled(false);
btn1.setEnabled(true);
btn2.setEnabled(true);
btn4.setEnabled(true);
}
// my code
} else if (v == btn4) {
if (v.isEnabled()) {
v.setEnabled(false);
btn1.setEnabled(true);
btn3.setEnabled(true);
btn4.setEnabled(true);
}
// my code
}发布于 2016-03-28 07:58:11
其他按钮的setEnabled(真)如下所示:
Button.OnClickListener btnOnClickListner = new Button.OnClickListener() {
@Override
public void onClick(View v) {
if (v == btn1) {
if (v.isEnabled()) {
v.setEnabled(false);
btn2.setEnabled(true);
btn3.setEnabled(true);
btn4.setEnabled(true);
}
// my code
} else if (v == btn2) {
if (v.isEnabled()) {
v.setEnabled(false);
btn1.setEnabled(true);
btn3.setEnabled(true);
btn4.setEnabled(true);
}
// my code
} else if (v == btn3) {
if (v.isEnabled()) {
v.setEnabled(false);
btn1.setEnabled(true);
btn2.setEnabled(true);
btn4.setEnabled(true);
}
// my code
} else if (v == btn4) {
if (v.isEnabled()) {
v.setEnabled(false);
btn1.setEnabled(true);
btn3.setEnabled(true);
btn4.setEnabled(true);
}
// my code
}https://stackoverflow.com/questions/36258196
复制相似问题