微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Fragment 继续从之前的执行中获取额外的数据

如何解决Fragment 继续从之前的执行中获取额外的数据

我有以下情况:

我有 2 个活动,名为 CameraActivity 和 AcceptPhotoActivity。

CameraActivity,更准确地说是它的片段,向 AcceptPhotoActivity 传递一个额外的数据,如下所示:

Intent intent = new Intent(getContext(),AcceptPhotoActivity.class);                                
intent.putExtra(SgaAppConstantes.ARG_FOTOSALVAR_ID,foto);
startActivity(intent);

AcceptPhotoActivity,通过它的片段,可以成功地检索照片的值:

Bundle h = getActivity().getIntent().getExtras();

FotoGuardarBean fotoBean = h.getParcelable(SgaAppConstantes.ARG_FOTOSALVAR_ID);

在某些情况下,AcceptPhotoActivity可以调用CameraActivity,像这样:

Intent intent = new Intent(getContext(),CameraActivity.class);
                    intent.putExtra(MapRecintosFragment.ARG_EXP_ID,MapRecintosFragment.expedienteBean);
                    intent.putExtra(MapRecintosFragment.ARG_USER_ID,MapRecintosFragment.sgaUser);
                    intent.putExtra(MapRecintosFragment.ARG_RECINTO_ID,MapRecintosFragment.mItemRecinto);

                    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                    getContext().startActivity(intent);

然后,我检查了当再次执行 CameraActivity 时会生成一个新的 foto 值。

但是在 AcceptPhotoActivity 中执行上述指令时

Bundle h = getActivity().getIntent().getExtras();

FotoGuardarBean fotoBean = h.getParcelable(SgaAppConstantes.ARG_FOTOSALVAR_ID);

它一直采用与第一次生成时相同的 foto 值。

我无法理解这种事情怎么会发生。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。