2012-03-13 68 views
0

可能重複:
How do I pass data between activities in Android?製作活動交流

我在我的應用程序三項活動和每個活動都依賴於另一個。我目前使用靜態變量在這些活動之間傳遞對象和值。問題在於它非常容易混淆,很難跟蹤我爲這個全局變量賦值的時間等等。我正在考慮在這些活動之間實現一個接口,以使代碼更加清晰和易於理解。事情是,我不完全確定這是最好的方式,所以任何幫助或建議都會很棒。

+0

你好把數據從一個活動傳遞給另一個? – 2012-03-13 10:23:05

回答

0

我相信你想要的是Intent.putExtra()方法。根據您想要傳遞的數據類型,有幾種方法。參見文檔here

1

使用putExtra發送信息到另一個活動
發送:

Bundle bundle = new Bundle(); 
bundle.putString(「name″, 「username」); 

Intent newIntent = new Intent(this.getApplicationContext(), ActivityClass2.class); 
newIntent.putExtras(bundle); 
startActivityForResult(newIntent, 0); 

接收:

Bundle bundle = this.getIntent().getExtras(); 
String data = bundle.getString(「name″); 

數據=用戶名

+0

我沒有看到一個bundle如何讓它變得更清晰,然後是全局變量。 – user1163392 2012-03-13 10:30:55

+0

Bundle是在android中的活動之間傳遞數據的默認方式。你的onCreate(你的活動的'主要')總是有一個bundle參數)。另請參閱:http://stackoverflow.com/a/6480551/706130。 – Andreas 2012-03-13 10:35:23

0

來傳遞數據: -

Intent i = new Intent(); 
i.putExtra("key", "data"); 
startActivity(i);