如何从 Android 上的意图中获取额外数据?

新手上路,请多包涵

如何将数据从一项活动(意图)发送到另一项活动?

我使用此代码发送数据:

 Intent i=new Intent(context,SendMessage.class);
i.putExtra("id", user.getUserAccountId()+"");
i.putExtra("name", user.getUserFullName());
context.startActivity(i);

原文由 Adham 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 590
2 个回答

首先,使用 getIntent() 方法获取启动活动的意图:

 Intent intent = getIntent();

如果您的额外数据表示为字符串,那么您可以使用 intent.getStringExtra(String name) 方法。在你的情况下:

 String id = intent.getStringExtra("id");
String name = intent.getStringExtra("name");

原文由 Malcolm 发布,翻译遵循 CC BY-SA 4.0 许可协议

按意图放置数据:

 Intent intent = new Intent(mContext, HomeWorkReportActivity.class);
intent.putExtra("subjectName", "Maths");
intent.putExtra("instituteId", 22);
mContext.startActivity(intent);

按意图获取数据:

 String subName = getIntent().getStringExtra("subjectName");
int insId = getIntent().getIntExtra("instituteId", 0);

如果我们为意图使用整数值,我们必须在 getIntent().getIntExtra("instituteId", 0) 中将第二个参数设置为 0。否则,我们不使用 0,Android 给我一个错误。

原文由 Om Prakash Sharma 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题