2012-02-14 5 views
1

나는 안드로이드 초보자입니다. 4 단계 (4 가지 활동)가 있습니다. 활동 1에서 버튼을 클릭하면 값을 저장해야합니다. 예 : counter1=3. 모든 단계는 1 단계와 같습니다. 이 정수 값을 어떻게 더하고 표시 할 수 있는지 알려주시겠습니까?Android 애플리케이션의 다양한 활동에 4 가지 값 추가

내가 추가 할 : 카운터 1 + COUNTER2 + counter3 + counter4 = 점수

나는이 단계가 함께 가입 할 수 있습니다 방법

?

답변

1

인텐 트 추가 기능을 사용하여 카운트를 전달하십시오. 다음은 증가 카운트를 유지하는 방법의 예입니다. 그러나 각 활동에서이를 넘겨주고 끝에 추가 할 수 있습니다. 탐색 활동 1

활동 1

int count = 5; 

- activity2에

Intent intent = new Intent(this, Activity2.class); 
intent.putExtra("counter", count); 

activity2에

int count = getIntent().getIntExtra("counter", 0); 

count += 3; // count is 8 

activity2에 탐색 - 활동 3

Intent intent = new Intent(this, Activity3.class); 
intent.putExtra("counter", count); 
,

Activity3

int count = getIntent().getIntExtra("counter", 0); 

count += 2; // count is 10 

탐색 활동 3-4

Intent intent = new Intent(this, Activity4.class); 
intent.putExtra("counter", count); 

활동 4

int count = getIntent().getIntExtra("counter", 0); 

count += 1; 

Log.i("TAG", "Your count is:"+count); // 11 
+0

답변 해 주셔서 감사합니다. 나는 값을 얻기 위해 버튼을 사용하고 또한 나의 단계를 보여주기 위해 목록보기를 사용한다. 나는 그것을 실행할 수 없었다. 예를 들어 스테이지 1을 선택하고 메뉴로 돌아가 다른 스테이지 (예 : 2 단계)를 선택하면 처음으로 활동을 시작할 때와 같이 점수가 0이됩니다. 이 문제를 어떻게 해결할 수 있습니까? –

+0

뒤로 버튼을 사용하는 경우. 지속성을 위해 SharedPreferences에 카운터를 저장하거나 하나의 활동으로 startActivityForResult() 및 onActivityResult()를 조사해야합니다. – Blundell

+0

그래서 SharedPreferences 또는 ActivityForResult가 작동하는 방법을 이해하는 데 유용하고 쉬운 설명이 있습니까? ---> 미리 감사드립니다. –

0

한 활동에서 다른 활동으로 번들의 일부로 값을 전달하십시오. 각 액티비티에 원하는 값을 추가하고 저장합니다. 다시 번들로 묶어 다음 액티비티로 전달하십시오. Bundle을 사용하여 활동간에 데이터를 전달하는 방법에 대한이 링크를 참조하십시오.

+0

초급자인데 어떻게해야합니까? –

+0

내 대답이 example에 대한 링크로 업데이트되었습니다. – kosa

+0

의도 의도 = 새 의도 (stagel.this, totalScore.class), 번들 b = 새 번들(); \t \t \t \t b.putInt ("counter", counter); \t \t \t \t 인 텐트입니다.putExtras (b); \t \t \t \t startActivity (인 텐트); \t \t \t \t finish(); –

1

은 다음과 같이 다음 활동에 값을 보내기 활동 :

Intent intent = new Intent(getApplicationContext(), NextActivity.class); 
intent.putExtra("key", value); 
startActivity(intent); 
을 수신 NextActivity에 그런

는 다음과 같이 값을 읽어

Bundle extras = getIntent().getExtras(); 
int receivedValue = extras.getString("key"); 

이제 당신은이 활동에서 값을 추가하고 다음 단계로 전달할 수 있습니다.

+0

Intent intent = new Intent (getApplicationContext(), NextActivity.class); intent.putExtra ("counter", value); startActivity (intent); 난 counter1 열쇠를 변경해야합니까? 나는 버튼에서 값을 얻는다. 버튼의 onclickListener에서이 코드를 사용해야한다? –

+0

예. 다음과 같이 할 수 있습니다. myButton.setOnClickListener (new OnClickListener() {// 여기에 startActivity에 코드 넣기}); –

+0

감사합니다. 작동합니다. :) –

관련 문제