Tôi đang gọi activityB từ activityA và truyền một đối tượng lớp bằng ý định.Android - Cách gửi dữ liệu trở lại hoạt động gọi điện
Intent intentB = new Intent(v.getContext(), activityB.class);
intentB.putExtra("data", data); //data is a class object
startActivity(intentB);
Hoạt độngB bắt đầu tốt và tôi cũng có thể trích xuất dữ liệu. Trong activityB, tôi đang sửa đổi đối tượng dữ liệu. Tôi muốn gửi đối tượng dữ liệu đã sửa đổi này trở lại activityA khi activityB.onDestroy() được gọi.
Bạn có lời khuyên nào không?
Đây là mã của tôi:
activityA, bắt đầu từ Intent
:
Intent i = new Intent(this, activityB.class);
i.putExtra("object", Class.object);
startActivityForResult(i, 1);
activityA, bắt mục đích:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
object = data.getParcelableExtra("object"); //the Class implements Parcelable
}
}
activityB
protected void onDestroy() {
Intent data = new Intent();
setResult(RESULT_OK, data)
finish(); // ends current activity
}
Tôi thành thật nghĩ rằng bạn đang tốt hơn để chỉ có một giao diện - đó là rất dễ dàng https://developer.android.com/ đào tạo/khái niệm cơ bản/phân đoạn/communicating.html – Fattie