我有一个非常普遍的问题,我没有找到我的问题的具体答案,因此再次提出。
我想在两种方法之间做出决定
我想知道什么?
我们现在还不知道有多少数据可供片段保留。
答案 0 :(得分:9)
嗯,这完全取决于应用程序的设计,流程和导航。
以下是使用单一活动和多个碎片的一些好处:
有了它,这里有一些缺点:
我个人使用具有多个片段的多个活动,其中我基于模块分离活动。在同一模块中,可以分段创建子模块。我发现在不同的场景中管理很容易,就像应用程序关闭,重新打开,通知,方向更改一样。
答案 1 :(得分:1)
我的问题是一样的,到目前为止,在我的所有应用程序中,只有一个活动,其余部分是碎片。我同意很难维护Fragment,但使用Fragment会提高你的性能。
假设举个例子,
我有10个活动,在每个活动中,我都在调用异步任务来执行一些后台操作。在每个异步任务的onPostExecute()中,您正在更新UI。但是在完成doInBackground()之前你切换了Activity并且Activity被销毁了,但是记住doInBackground()仍在进行中,一旦完成,将调用onPostExecute,而在onPostExecute()中我们正在更新UI,但活动被破坏,因此这会在您的应用中造成泄漏。 但是,如果您只维护一个Activity,那么它将很容易维护。
等待别人的意见。
答案 2 :(得分:1)
除了上面的答案之外,我要添加的几点可以帮助决定何时使用片段以及何时使用活动。
答案 3 :(得分:0)
支持“单个活动多个片段”的小点。
有时您可能需要一个组件(例如横幅广告)在您应用的不同网页/屏幕之间保留。如果您有多个Activities
,则需要在每个Activities
上重新创建该组件。但是如果你有一个Activity
,你只需将该组件添加到Activity布局中就可以忘记它。