ani*_*rus 6 android-intent android-activity
我从activityA调用activityB并使用intent传递一个类对象.
Intent intentB = new Intent(v.getContext(), activityB.class);
intentB.putExtra("data", data); //data is a class object
startActivity(intentB);
Run Code Online (Sandbox Code Playgroud)
activityB开始很好,我也能够提取数据.在activityB中,我正在修改数据对象.我想在调用activityB.onDestroy()时将此修改后的数据对象发送回activityA.
有什么建议?
这是我的代码:
activityA,开始Intent:
Intent i = new Intent(this, activityB.class);
i.putExtra("object", Class.object);
startActivityForResult(i, 1);
Run Code Online (Sandbox Code Playgroud)
activityA,捕捉意图:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
object = data.getParcelableExtra("object"); //the Class implements Parcelable
}
}
Run Code Online (Sandbox Code Playgroud)
activityB
protected void onDestroy() {
Intent data = new Intent();
setResult(RESULT_OK, data)
finish(); // ends current activity
}
Run Code Online (Sandbox Code Playgroud)
利用ActivityResult.
startActivityForResult(int, Intent)setResult(RESULT_OK, data)(其中数据是Intent)onActivityResult(int, int, Intent)并捕获data-Intent活动A,开始Intent:
Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, 1);
Run Code Online (Sandbox Code Playgroud)
活动A,捕获数据:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
// make use of "data" = profit
}
}
Run Code Online (Sandbox Code Playgroud)
活动B:
Intent data = new Intent();
setResult(RESULT_OK, data)
finish(); // ends current activity
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7272 次 |
| 最近记录: |