首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android中的活动太多了?

Android中的活动太多了?
EN

Stack Overflow用户
提问于 2012-04-06 23:20:43
回答 6查看 9.3K关注 0票数 13

当我开始我的Android项目时,我有一个误解,即应用程序中显示的每个屏幕都必须是一个新的活动。现在我已经完成了这个项目,我已经在我的模拟器上以及几个android手机上进行了检查。到目前为止,我没有看到任何问题,但最近我在某个地方读到,应用程序中太多的活动是一个非常糟糕的想法。

目前我的应用程序大约有15-20个activities.Ideally,我听说应该在5-6左右。我是需要重新组织我的代码,还是只在它完成了它的一部分之后就完成了每个活动?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-04-06 23:36:19

在创建复杂的应用程序时,您肯定需要创建许多活动。因此,这取决于您的应用程序需要多少活动。项目中的活动数量不会影响性能。

效果是由你的android堆栈中的活动数量产生的。因此,最好在堆栈中保留5-6个活动(如果不再需要,则结束活动)。

因此,可以根据应用程序的需要创建任意数量的活动,但同时保持较少的活动处于打开状态。

票数 37
EN

Stack Overflow用户

发布于 2012-04-07 01:10:39

如果您的项目有许多活动,但有些活动并不重要,这意味着在另一个活动开始后,您不需要任何活动。

在清单文件集中:android:noHistory="true"

示例:

代码语言:javascript
复制
Activity1 -> Activity2 -> Activity3 -> Activity4..................-> Activity20

在清单文件中:

代码语言:javascript
复制
  activity android:name=".Activity1" android:label="@string/app_name" android:noHistory="true"

如果您再次使用Intent调用finish,则在startActivity()之前设置Activity1 ()。

我想这对你有帮助

票数 8
EN

Stack Overflow用户

发布于 2012-04-06 23:33:20

Android系统试图尽可能长时间地维护应用程序进程,但最终需要删除旧进程,以便为新的或更重要的进程回收内存。这适用于在后台运行的Activity...系统会为您管理旧的Activity,并在系统需要为新进程回收内存时将其销毁。

话虽如此,我认为你应该考虑两件事:

  1. User experience。你的应用真的需要15-20个Activity吗?你能想办法减少屏幕的数量吗?更少的Activity通常更好,因为当用户导航application.
  2. Code设计时,它需要较少的交互。虽然每个Activity都有自己的独立类,但这不会限制您在实现应用程序时做出明智的设计决策。例如,您可以尝试通过让相似的Activity扩展abstract class来对它们进行分组。随着Android项目规模的增长,它们变得越来越难以管理。以这种方式在相似的类之间共享代码将确保您可以轻松地对应用程序的核心进行简单的更改。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10045501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档