其他分享
首页 > 其他分享> > android – 片段onStart和onCreateActivity在后退按钮按下后调用

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

作者:互联网

场景:
我有一个Activity,其中我有多个片段,我正在使用片段事务将一个片段替换为另一个片段并将它们添加到BackStack.我正在对一些片段进行JSON解析和网络相关任务.

问题:
我的问题是,当我按下后退按钮以转换到最后一个片段时,替换片段后再次调用onStart和onActivityCreated方法.每次使用后退按钮导航到该片段时,我在这些事件中的代码都会执行


即使在替换片段并使用后退按钮返回到它之后,EditText中的任何值都保持不变.

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

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

谢谢

解决方法:

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

的onCreate()

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

查看片段的生命周期.

您还可以获得更多详细信息here

标签:android,android-fragments,fragmenttransaction
来源: https://codeday.me/bug/20190831/1777185.html