所以我有活动 A 和活动 B 。 A 是该应用的主屏幕,通过此活动,我可以打开 B 。在B内部,用户输入一些通过意图发送回活动A的数据,然后数据显示在屏幕上。
我注意到虽然意图完美无缺,但每次我在活动A上重新打开应用程序时,都会在最后一个意图中发送一份精确的数据副本。
onResume of activity A (收件人和数据显示器)
@Override
protected void onResume() {
super.onResume();
Intent intent = getIntent();
String name = intent.getStringExtra("name");
String path = intent.getStringExtra("path");
setAttrs(name, path);
}
这是将数据从 B 发送到 A 的意图,意图在OnClick侦听器上绑定
send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
name = mEditText.getText().toString();
Intent intent = new Intent(SecondActivity.this, MainActivity.class);
intent.putExtra("name", nameFile);
intent.putExtra("path", outputFile);
startActivity(intent);
}
});
提前致谢。
答案 0 :(得分:0)
使用startActivityForResult()
A 中的Activity
。在Activity
B 中,您可以拨打setResult()
并提供Intent
,然后将其发送回Activity
A 。在Activity
A 中,您将实施onActivityResult()
来处理结果。