我是Android的初學者。我有四個階段(四項活動)。在活動一中,當你點擊一個按鈕時,你必須存儲價值。例如counter1=3
。每個階段都像第一階段。我想知道你是否可以告訴我如何將這些整數值加在一起並顯示出來。在Android應用程序的不同活動中添加四個值
我想補充:計數器1 +計數器2 +計數器3 + counter4 =得分
我如何加入這些階段一起?
我是Android的初學者。我有四個階段(四項活動)。在活動一中,當你點擊一個按鈕時,你必須存儲價值。例如counter1=3
。每個階段都像第一階段。我想知道你是否可以告訴我如何將這些整數值加在一起並顯示出來。在Android應用程序的不同活動中添加四個值
我想補充:計數器1 +計數器2 +計數器3 + counter4 =得分
我如何加入這些階段一起?
通過您的計數使用意向演員。以下是如何保持遞增計數的示例,但您可以從每個活動傳遞它們並在最後添加它們。
活動1
int count = 5;
導航活動1 - 活性2
Intent intent = new Intent(this, Activity2.class);
intent.putExtra("counter", count);
活性2
int count = getIntent().getIntExtra("counter", 0);
count += 3; // count is 8
導航活性2 - 活動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
將值作爲Bundle的一部分從一個活動傳遞到另一個活動。在每個活動中,添加您想要的值並再次將其存儲在Bundle中並傳遞到下一個活動。請參閱此鏈接,瞭解如何使用Bundle在活動之間傳遞數據。
因爲我是初學者,我該如何做到這一點? – 2012-02-14 22:53:17
通過示例鏈接更新了我的答案。 – kosa 2012-02-14 22:53:38
Intent intent = new Intent(stagel.this,totalScore.class); Bundle b = new Bundle(); \t \t \t \t b.putInt(「counter」,counter); \t \t \t \t意圖。putExtras(b)中; \t \t \t \t startActivity(intent); \t \t \t \t finish(); – 2012-02-14 22:55:33
發送值設置到下活動像以下:
Intent intent = new Intent(getApplicationContext(), NextActivity.class);
intent.putExtra("key", value);
startActivity(intent);
然後在接收NextActivity
,讀值以下一樣:
Bundle extras = getIntent().getExtras();
int receivedValue = extras.getString("key");
現在你可以從這個活動增加值,並將其傳遞到下一個。
意圖意圖=新的意圖(getApplicationContext(),NextActivity.class); intent.putExtra(「counter」,value); startActivity(intent);我必須改變counter1的密鑰?我從button中獲得價值。我必須在按鈕的onclickListener中使用此代碼? – 2012-02-15 01:23:52
是的。你可以這樣做:myButton.setOnClickListener(new OnClickListener(){//把代碼放到startActivity這裏}); – 2012-02-15 07:04:39
謝謝,它的作品。:) – 2012-02-16 04:55:58
感謝您的回覆。我使用按鈕來獲得價值,我也使用列表視圖來顯示我的階段。我無法運行它。我認爲,當我選擇一個階段,例如stage1,然後返回菜單選擇另一個階段,例如階段2時,得分會變成零,就像我第一次打開活動時一樣。 我該如何解決這個問題。 – 2012-02-15 00:05:06
如果您使用後退按鈕。您必須將計數器存儲在SharedPreferences中以保持持久性,或者使用您的一項活動查看startActivityForResult()和onActivityResult()。 – Blundell 2012-02-15 08:38:35
所以,你有什麼有用的,容易toturial瞭解如何SharedPreferences或啓動ActivityForResult工作?--->在此先感謝:) – 2012-02-16 04:58:08