2016-07-01 2 views
-2

클래스가 있습니다. 일부 클래스가 있습니다. 그것들 중 하나는 부울 변수이고 배열을 통해 이동하는 것을 제어합니다 (참인 경우 처음부터 시작, 거짓이면 기억 된 위치에서 시작)부울 조건 java

여기가 bool 변수의 일부입니다.

boolean fromStart; 
fromStart = vars.isFromStart(); 
public void setFromStart(boolean fromStart) { 
    this.fromStart = fromStart; 
} 


public boolean isFromStart() { 
    return fromStart; 
} 

이 내가이 부울 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 변수는 항상 true입니다.) 내가 뭘 잘못 했니?

+0

는 IF 문 검사를. 하지만 그것은 vars.isFromStart()를 사용하여 전에 설정되어있는 것으로 보입니다. if (vars.isFromStart()) –

답변

2

전체 코드를 보지 않고 "vars"라는 객체 내부의 fromStart라는 부울에 값 false를 할당하는 것처럼 보이지만 주 클래스의 부울 변수 대신 동일한 이름의 부울 변수를 검사합니다 "바르"에

이 경우 조건을 수정 시도 객체 : 변수 fromStart에 대한

if (vars.isFromStart()) 
+0

약간 설명을 변경했습니다. pls 볼 수 있니? –

+0

전체 var 클래스를 표시 할 수 있습니까? vars, 때로는 var라고도합니다. 또한 클래스의 var 객체를 초기화하고 다른 클래스에서 사용하고 있습니까? 그렇다면 var 객체를 공유하고 있습니까? – SCouto