我上课,有一些vars。其中一个是布尔变量,它控制通过数组移动(如果它是真的,从头开始,如果是假,从记住的位置开始)
这是bool变量的一部分。
boolean fromStart;
fromStart = vars.isFromStart();
public void setFromStart(boolean fromStart) {
this.fromStart = fromStart;
}
public boolean isFromStart() {
return fromStart;
}
这就是我如何使用这个bool var
if (vars.isFromStart){
i = 0;
vars.setFromStart(false);
}
else {
loadPos(i);
i = getIntent().getIntExtra(pos, i);
}
这是代码,我尝试更改值:
public void fromLastClick(View view) {
var.setFromStart(false);
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);
public void startClick(View view) {
var.setFromStart(false);
Intent intent = new Intent(MainActivity.this,ChangeFacts.class);
startActivity(intent);
}
但它总是从头开始(看起来像bool变量总是如此)。我做错了什么?
答案 0 :(得分:2)
在没有看到完整代码的情况下,您似乎将值false赋给名为" vars"的对象内的一个名为fromStart的布尔值,但是您正在检查主类中具有相同名称的布尔变量而不是" vars"对象
尝试修改if条件:
if (vars.isFromStart())