Fragment as a singleton in Android(片段作为 Android 中的单例)
问题描述
一般问题我可以将片段定义为单例吗?
General Question Can I define Fragments as Singletons?
具体问题在我的应用程序中,我有一个带有 FragmentPager
的FragmentActivity",它有两个片段,FragmentA
和 FragmentB
.
Specific question
In my application I have one 'FragmentActivity' with a FragmentPager
which has two Fragments, FragmentA
and FragmentB
.
我在 FragmentA
extends Fragment
类中将片段定义为单例:
I defined the fragments as Singletons in the FragmentA
extends Fragment
class:
在我的 FragmentPagerAdapter
中:
这就是我膨胀片段布局的方式:
and this is how I inflate the fragments layout:
我的问题:
当我第一次启动我的应用程序时,一切正常.当我关闭我的应用然后重新启动它时,我没有看到这两个片段.
When I first launch my app everything works well. When I close my app and then restart it, I'm not seeing both of the fragments.
推荐答案
片段是应用程序的可重用组件.您不应该将它们用作单例,而应该实现 Fragment.SavedState 或 onSavedInstanceState.
Fragments are meant to be reusable components of applications. You should not be using them as singletons, instead you should implement Fragment.SavedState or onSavedInstanceState.
这篇关于片段作为 Android 中的单例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!