【问题标题】:How to save and transfer the value of more than 5 edit Text from one activity to another?如何将超过 5 个编辑文本的值从一个活动保存并转移到另一个活动?
【发布时间】:2013-04-08 16:33:44
【问题描述】:

我想在活动之间传输我在 EditText 字段中编辑的数据。如果我从活动 1 转移到活动 2,我希望能够在活动 2 中编辑从活动 1 收到的数据,将新数据保存在活动 2 中并转移到活动 3。我如何保存和转移同一时间的数据。现在有了共享偏好,我可以转移,但我无法保存我刚刚在当前活动中编辑的数据。 请帮忙! 谢谢!

这是用于在 Activity 1 (WEEK1) 中保存权重的代码:

SharedPreferences WeightPreferences = getSharedPreferences("WEEK1", MODE_PRIVATE);
String r1 = w1.getText().toString();
String r2 = w2.getText().toString();
String r3 = w3.getText().toString();
String r4 = w4.getText().toString();
String r5 = w5.getText().toString();
SharedPreferences.Editor editor = WeightPreferences.edit();
editor.putString("wr1", r1);
editor.putString("wr2", r2);
editor.putString("wr3", r3);
editor.putString("wr4", r4);
editor.putString("wr5", r5);
editor.commit();

这是用于在活动 2 (WEEK2) 中显示活动 1 的权重的代码,以此类推:

SharedPreferences WeightPreferences = getSharedPreferences("WEEK1", MODE_PRIVATE);
String string1 = weightPreferences.getString("wr1", null);
String string2 = weightPreferences.getString("wr2", null);
String string3 = weightPreferences.getString("wr3", null);
String string4 = weightPreferences.getString("wr4", null);
String string5 = weightPreferences.getString("wr5", null);
w1.setText(string1);
w2.setText(string2);
w3.setText(string3);
w4.setText(string4);
w5.setText(string5);

【问题讨论】:

标签: android android-edittext transfer


【解决方案1】:

将值放入数组并像这样发送:

发送:

Intent intent =new Intent(ccurrentClass.this, anotherClass.class);
Bundle b = new Bundle();
b.putSerializable("value", arrayOfString);
intent.putExtras(b);
startActivity(intent);

检索:

Intent intent = getIntent();
Bundle b = intent.getExtras();
String[][] data = (String[][]) b.getSerializable("value");

【讨论】:

  • 好的,但我希望能够编辑我收到的号码,将它们保存在当前活动中并进一步转移。然后再次编辑数字,保存在当前活动中并转移到下一个活动,依此类推。这个解决方案对我有帮助吗?谢谢
  • 这些值在String[][] 中,您可以根据需要以任何方式对其进行修改,然后通过上述方式将它们从活动发送到活动多次。顺便说一句,如果这个答案对你有帮助,请接受并投票
  • 是的,它帮助我找到了解决方案。我怎么能投票给你?谢谢
  • 我现在有一个错误。所以我有 MainActivitywich 是我的家庭活动,我可以从那里访问 Activity1 和 Activity2。我使用您的方法将数字从 Activity1 转移到 Activity2,一切正常。但是当我点击主页按钮并转到 MainActivity 时,如果我尝试从这里打开 Activity2,就会崩溃.. 我不明白为什么..
  • 这里有一个上下按钮...在我的答案旁边,在那个按钮下面有一个正确标记按钮。请点击它并接受我的回答。请使用您尝试过的代码发布一个新问题,以便我们可以帮助您了解您的新错误
【解决方案2】:

您可以使用所有数据创建一个数组列表并将对象传输到调用事件

intent.putExtra("Name", Object_with_all_your_content);

我明白你的问题了吗?

【讨论】:

  • 嗨!谢谢你的回答。我现在有一个错误。所以我有 MainActivity,这是我的家庭活动,我可以从那里访问 Activity1 和 Activity2。我使用您的方法将数字从 Activity1 转移到 Activity2,一切正常。但是当我点击主页按钮并转到 MainActivity 时,如果我尝试从这里打开 Activity2,就会崩溃.. 我不明白为什么..
  • 你能分享一下 logcat 错误/异常消息吗?您可以在异常中查看详细信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-04-05
  • 2020-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-04
  • 1970-01-01
相关资源
最近更新 更多