我正在尝试使用以下代码在 Java 中创建一个简单的 Android 应用程序:
public class MainActivity extends Activity {
//Declare variables
boolean first = true;
boolean secondorbefore = true;
Button ClickMe = (Button) findViewById(R.id.clicker);
ClickMe.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Check to see if this is the first click
if (first = true) {
first = false;
// DO STUFF FOR FIRST CLICK
} else if ((secondorbefore = true) {
//so this is the second click?
secondorbefore = false;
// DO STUFF FOR SECOND CLICK
} else {
//OK it's the third click or later
// DO STUFF FOR THIRD OR LATER CLICKS
}
}
});
}
然而,它似乎只运行一次 if 条件。它在第一个实例中执行代码,包括将 secondorbefore 变量设置为 false,但随后的点击似乎什么也没做。代码 OnClickListener 会在后续点击中执行,但它不会通过条件语句运行。
Java 新手,所以我可能犯了一个非常明显的错误。
非常感谢。
最佳答案
提示:
=
是赋值运算符。==
是一个相等运算符。- 在 if 语句中使用赋值运算符会发生什么?
- 在 if 语句中使用相等运算符会发生什么情况??
关于Java:如果条件只被检查一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15902716/