2015-07-04 41 views
2

我想將數據從一個活動傳遞給另一個活動。如果是兩個或三個活動,我們可以通過intent發送數據。假設存在更多數量的活動(大約20個)。我如何將數據從第一次活動傳遞到最後一次活動?如何將數據傳遞給更多數量的活動

我想去活動A - 「乙 - 」ç - > d - > ......Ÿ - >ž

如果我們通過意圖發送數據(把備用)那是最糟糕的方法。

有沒有其他方式發送數據?

在此先感謝

回答

1

我會用SharedPreferences這一點。

這會更容易,因爲我們可以在任何活動的任何地方更改它並根據需要訪問它們。我們不需要傳遞每一個活動的過渡。

簡單的例子: 要在共享偏好

SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit(); 
editor.putString("name", "Nabin"); 
editor.putInt("idName", 12); 
editor.commit(); 

設定值和檢索作爲

SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE); 
String restoredText = prefs.getString("text", null); 
if (restoredText != null) { 
    String name = prefs.getString("name", "No name defined");//"No name defined" is the default value. 
    int idName = prefs.getInt("idName", 0); //0 is the default value. 
} 

你可以參考一下here更多。

+0

共享首選項是好的還有其他方式 – YUGANDHAR

+0

考慮到您的要求,您是否有任何問題? – Nabin

+1

沒有它的罰款我正在爲此,但只是想知道任何其他方式 – YUGANDHAR

0

如果您需要一些數據到多個活動,只需將數據保存到SharedPreference,您將能夠訪問所有活動。 Here是完整的教程。

保存數據

// Create object of SharedPreferences. 
    SharedPreferences sharedPref= getSharedPreferences("mypref", 0); 
    SharedPreferences.Editor editor= sharedPref.edit(); 
    //put your value 
    editor.putString("name", strName); 
    editor.putString("pwd", strPass); 
    editor.commit(); //commits your edits 

檢索數據

SharedPreferences sharedPref= getSharedPreferences("mypref", 0); 
String name = sharedPref.getString("name", ""); 
String password = sharedPref.getString("pwd", ""); 
0

如果不是必須的情況下使用的活動,您可以更改活動片段,將它們連接到同一個活動,緩存你的數據在活動中並從碎片中獲得。

相關問題