按下后退按钮后调用onStart和onCreateActivity片段

Vip*_*hit 3 android android-fragments fragmenttransaction

场景:
我有一个单独Activity的,我multiple fragmentsreplacing一个片段与另一个使用fragment transaction并添加到BackStack.我正在对一些片段进行JSON解析和网络相关任务.

问题: 我的问题是,在我按下后退按钮后,更换片段后,再次调用最后一个片段onStartonActivityCreated方法.我在这些事件中的代码每次我执行navigatefragment使用back button

但是EditText,即使在replacing片段之后并且使用后退按钮返回到它, 任何值都保持不变.

为什么onStartonActivityCreated每次执行?有没有什么方法可以让我的代码在返回片段后不执行?

更新 基本上我想在创建片段后设置按钮文本.用户可以更改该文本.但当我返回到该片段时,用户值会更改为我在片段创建时设置的默认文本.

谢谢

Muk*_*ngh 5

您可以将代码仅在片段创建onCreate()片段时运行一次.

的onCreate()

系统在创建片段时调用此方法.在您的实现中,您应该在片段暂停或停止时初始化要保留的片段的基本组件,然后重新开始.

查看片段的生命周期.在此输入图像描述

您还可以在此处获取更多详细信息