3

场景:
我有一个单曲Activitymultiple fragments我是replacing一个片段,另一个片段使用fragment transaction并将它们添加到BackStack. 我正在对一些片段进行 JSON 解析和网络相关任务。

问题: 我的问题是,当我按下后退按钮导航到最后一个片段时替换片段后,再次调用onStartonActivityCreated方法。我在这些事件中的代码每次执行时navigate都会fragment使用back button

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

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

更新 基本上我想在创建片段后设置一个按钮文本。用户可以更改该文本。但是当我返回该片段时,用户值会随着我在片段创建时设置的默认文本而改变。

谢谢

4

1 回答 1

5

你可以让你的代码在片段的片段创建时只运行一次onCreate()

onCreate()

系统在创建片段时调用它。在您的实现中,您应该初始化在片段暂停或停止然后恢复时要保留的片段的基本组件。

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

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

于 2013-08-09T09:24:20.517 回答