我有一個主要活動,擴展到AppCompatActivity,它包含一個FrameLayout,我用它來替換它所需的片段。如何從一個Activity返回到一個片段?
但是,有一次,我打電話給另一個活動只是爲了顯示一些特定的信息,並且需要將這些信息傳回到最後一個片段顯示的主要活動。因此,我嘗試使用FragmentManager,並且Fragment顯示爲透明;另外,如果我使用了,我失去了主要活動的FrameLayout ID。
,試圖澄清,我將提出一個方案:
可以使用onBackPressed解決呢?
UPDATE
下面是我的onActivityResult調用startActivityForResult,這是在一個片段中使用。
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 2) {
if (resultCode == Activity.RESULT_OK) {
execusaoVistoria.fotos = allFotos;
Intent startPreview = new Intent(getContext(), PreviewActivity.class);
startPreview.putExtra("path", fileName.toString());
startPreview.putExtra("ExecusaoVistoria", execusaoVistoria);
startActivityForResult(startPreview, 10);
}
} else if (requestCode == 10) {
if (resultCode == Activity.RESULT_OK) {
allFotos.add((Fotos) data.getBundleExtra("Bundle").getParcelable("foto"));
}
}
}
這裏,是從調用的setResult活動代碼:
Intent i = new Intent();
i.putExtra("Bundle", bundle);
setResult(Activity.RESULT_OK, i);
finish();
它通過使用您的提示工作。但是,當我完成其他活動時,我需要找到一種方法在OnCreate上獲取結果。 – Tarcisiofl
當您返回活動時,OnCreate不會被調用。你把邏輯是onResume()可能是 –