有不少,你可以分享不同Activity
類之間數據的幾種不同的方式。你如何做到這一點取決於你的具體應用程序和數據應該具有的生命週期。
第一種方式是由putExtras()
方法來將它傳遞給你的第一Activity
推出新Activity
任意信息發送到其他活動。要啓動第二個Activity
,請使用Intent
;你正在做的是包裝一些額外的任意數據(在這種情況下,也許你的蛋白質的東西):
Bundle bundle = this.getIntent().getExtras();
String param1 = bundle.getString(「some_protein_stuff″);
然而,正如:
Bundle bundle = new Bundle();
bundle.putString(「some_protein_stuff″, textStringFromYourEditText);
Intent newIntent = new Intent(this.getApplicationContext(), ActivityClass2.class);
newIntent.putExtras(bundle);
startActivityForResult(newIntent, 0);
在ActivityClass2,我們可以使用語法閱讀此參數一個替代方案,而不是在調用它時將數據傳遞到新的Activity
,您可能還需要考慮使用共享首選項。這是一種機制,通過這種機制,您可以通過鍵值對在應用程序中非常輕鬆地存儲數據。如果您可能希望使用用戶通過EditText
在各個其他Activity
類中輸入的值,並且希望在應用程序關閉並在稍後再次打開時使用相同的值,那麼它仍然可用只需將其從共享首選項中拉出即可。首選項非常易於使用,並且在SO或其他地方有各種教程。
作爲另一種選擇,您可以考慮通過創建一個擴展android.app.Application
的類來共享類似於「全局」的數據,或者創建一個Singleton類,從而獲得與此類似的結果。
開始新Activity
當與Intent
捆綁數據的第一個最明顯的解決方案是可能你以後,但後者的兩個建議也可能是利益取決於應用程序如何工作以及如何你想要保持這些數據。
你問這個問題之前,你甚至做過任何研究嗎? – njzk2