将数据传递到另一个活动

时间:2014-08-16 14:19:11

标签: android-intent

-Hello专家,

我有三个活动,比如ActivityOne,ActivityTwo和ActivityThree。

在ActivityOne上我有EditText1,EditText2和Button1。当我单击Button1时,它应该将我输入的数据保存到EditText1和EditText2(Sharedpreferences)。

我要存储很多数据。我的意思是一旦我将'abc'作为EditText1和'123'作为EditText2值,当我点击Button1数据时应该保存,下次当我点击Button1它应该单独保存EditText1和EditText2,不应该覆盖第一。

在ActivityTwo上,我有另一个名为ButtonShow的按钮。当我单击ButtonShow时,它应该显示我从ActivityOne保存的项目列表,当我从该列表中选择一个项目时,它应该打开ActivityThree,其中包含所选项目的值。

非常感谢你的帮助。

2 个答案:

答案 0 :(得分:0)

ActivityOne

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
prefs.edit().putString("item", "value").commit();

ActivityThree

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
myName = prefs.getString("buffer", null);

答案 1 :(得分:0)

你应该明确地阅读有关文件的内容 培训部分将指导您完成有关如何实现您的目标的示例,尤其是Training。 之后,您将能够将数据放入Bundle并将其传递给下一个Activity。

在第一个活动:

public void sendMessage() {
    Intent intent = new Intent(this, SecondActivity.class);
    intent.putExtra(EXTRA_MESSAGE, "some data");
    startActivity(intent);
}

关于第二个活动:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Get the message from the intent
    Intent intent = getIntent();
    String message = intent.getStringExtra(SecondActivity.EXTRA_MESSAGE);
}