2013-03-03 3 views
0

public int를 가진 하나의 클래스가 있습니다. Result; 나중에 게임에서 사용자가 만드는 점수를 저장하기 위해 변수를 사용합니다. 이제는 Result라는 또 다른 액티비티/클래스가 있는데 그 액티비티에 textView가 있고 그 textView에 대한 sexText에 Result 변수를 사용해야합니다. 나는 내 게임 클래스의 인스턴스를 만들어 결과 클래스의 g를 불러 나는 이런 식으로 뭔가보다 :다른 클래스에 정수 변수를 전달하는 방법

score = (TextView) findViewById(R.id.tvResult); 
     score.setText("Game over!\nYour score is:\n" + k.Result); 

을하지만 항상 0을 얻을 난 변수의 디폴트 값을 얻을 수 있기 때문에 그건 생각하지 않는다 진짜. 게임 종료 후 변수에 최종 값을 어떻게 추가 할 수 있습니까?

또한 의도로 변수를 전달, 게임 활동이 시도 :

Intent i = new Intent(Quiz.this, Result.class); 
      i.putExtra("newResultVariable", Result); 
      startActivity(i); 

이 또한 의도로 변수를 전달하려면 0

+0

'묶음'을 의도로 전달하십시오. –

+0

@codingcrow'putExtra()'가 좋습니다. –

+0

@ A - C 네, 둘 다 괜찮아요. –

답변

2

를 얻을.

모든 언어로 프로그래밍하려면 언어의 명명 규칙을 따라야합니다. Result.java에서

Intent intent = new Intent(context,Result.class); 
intent.putExtra("newResultVariable", result); 
startActivity(intent); 

Quiz.java

에서

값을 얻을 수 있습니다.

퀴즈 활동 인 : 그래서 오히려 다음과 같이 Result.Now 시도보다 결과이어야한다 낙타 표기법에게

을 준수하지 당신이 준 모든 변수 이름의

public void onCreate(Bundle bundle) { 
    .... 
    int score = 0; 
    TextView scoreTextView = (TextView) findViewById(R.id.tvResult); 

    Bundle extras = getIntent().getExtras(); 
    if(extras !=null) { 
     score = extras.getInt("newResultVariable", 0); 
    } 

    scoreTextView.setText("Game over!\nYour score is:\n" + score); 
    .... 
} 
+0

아니요, 여전히 0이 아닙니다. 분명히하기 위해이 부분은 좋습니다. score.setText ("게임 끝! \ n 점수 : \ n"+ 결과); ? 또한 int 스코어에 대해 "지역 변수 점수가 읽히지 않습니다"라는 오류를 얻습니다. – user2083882

+0

@ user2083882 지금 사용해보세요. 나는 당신을 위해 쉽게 내 대답을 편집했습니다. –

+0

이제 정상적으로 작동합니다. 내 이름이 갈등이라고 생각해. 내 textview도 점수라고 했거든. 고마워. – user2083882

1

우선 좋지 않다 결과 활동에

Intent intent = new Intent(getApplicationContext(),Result.class); 
intent.putExtra("result_variable", result); 
startActivity(intent); 

getIntent().getIntExtra("result_variable", 0); 
,536,
+0

CamelCase 죄송합니다. 그것은 작동하지 않았다. 여전히 0입니다. 내가 코드를 복사했지만 뭔가 잘못하고있는 것 같습니다. – user2083882

관련 문제