0

我的问题是如何在两个活动之间传递像字符串这样的数据。通常我会这样做:

Intent i = new Intent(thisclass.this,NextClass.class); 
Bundle b = new Bundle();
i.putExtras(b);
b.putString("Name",Name);
StartActivity(i);

但这会使我的活动关闭并打开下一个活动,不是吗?有什么方法可以让我只传递数据而不打开其他活动?

4

2 回答 2

2

我认为您正在寻找带有 SharedPreference 的东西,请参阅文档:SharedPreference

如果这是正在寻找的东西。

尝试这个:

全球的:

private SharedPreferences pref;

创建:

pref = this.getSharedPreferences("SharedPreference", Context.MODE_PRIVATE);

你要保存数据的地方:

String data = "yourData"
pref.edit().putString("myData", data).commit();

另一个活动:

全球的:

private SharedPreferences pref;

创建:

pref = this.getSharedPreferences("SharedPreference", Context.MODE_PRIVATE);

您要获取数据的地方:

String dataFromFristActivity = pref.getString("myData", null);
于 2013-04-10T16:23:21.430 回答
0

您的呼叫活动不会关闭,而是暂停。我同意@Egor。调用的活动尚不存在。除非您尝试在两个不同应用程序的活动之间发送数据。那是完全不同的蠕虫罐头。

于 2013-04-10T16:22:10.500 回答