Android 在安卓系统中,使用活动的有效方式是什么

Android 在安卓系统中,使用活动的有效方式是什么,android,android-activity,Android,Android Activity,我只想问一下什么是有效的活动使用方式。表示对多个功能使用一个活动,或对每个功能使用多个活动。 在我的应用程序中,处理一些事情,如类别->子类别->产品列表。在这种情况下,方向会更改设计,并且还需要使用以前的功能状态进行备份 谢谢,“活动是用户可以做的一件单一的、有重点的事情”。换句话说,应用程序的每个不同屏幕都应该是一个活动 你唯一应该让一个活动代表多个屏幕的时候是,如果它是一个递归动作,比如文件浏览器;i、 e.只是更改显示的数据,但显示方式相同的东西。为应用程序的每个逻辑“屏幕”创建一个活动

我只想问一下什么是有效的活动使用方式。表示对多个功能使用一个活动,或对每个功能使用多个活动。

在我的应用程序中,处理一些事情,如类别->子类别->产品列表。在这种情况下,方向会更改设计,并且还需要使用以前的功能状态进行备份

谢谢,“活动是用户可以做的一件单一的、有重点的事情”。换句话说,应用程序的每个不同屏幕都应该是一个活动


你唯一应该让一个活动代表多个屏幕的时候是,如果它是一个递归动作,比如文件浏览器;i、 e.只是更改显示的数据,但显示方式相同的东西。

为应用程序的每个逻辑“屏幕”创建一个活动是很常见的,但为该屏幕的多个“状态”(例如对话框、不同模式)共享同一活动


后退按钮将自动在活动中向后移动(默认情况下),您可以覆盖活动中的后退按钮,以恢复到同一活动中的先前状态(即隐藏面板)

基本上,对于Android,活动不是功能的同义词。它是屏幕用户界面的同义词。因此,如何实现功能是您的选择。你只需要考虑以下提示:

  • 如果对类别和子类别使用相同的活动(使用 列出元素),然后需要时间删除类别的项目 (另外,GC也需要时间),用 子类别。这里的弱点是用户无法返回的 使用“后退”按钮的上一个活动(这违反了默认设置) 对于用户交互,屏幕是相同的 类别和子类别(这可能会让用户感到混乱),需要 删除不必要的元素并填充 新元素。优点:您可以减少内存消耗 你的申请
  • 第二种选择是使用不同的活动。弱点:it 初始化新活动和填充列表也需要时间 使用子类别的值时,存储将需要更多内存 两项活动。优点:清晰的用户理解,更多 对用户操作的责任(您不需要运行GC 删除不必要的对象)

  • 对我来说,第二种方法更好,除非你不受记忆的限制

    没有否决票。请正确地解释你的问题。我不明白
    在哪个方向更改了设计,还需要使用以前的功能状态进行备份。
    您能把问题弄清楚吗?最后一行有点混乱Hi Mudassir感谢您的回复,在我的应用程序中,我使用Tab&one of Tab我使用Category->subcategory->Product listing功能。我使用Tab&one of Tab我使用Category->subcategory->ProductListing功能。对于横向和纵向模式,所有功能的视图也不同。当我从任何功能返回并返回到上一个时,我将恢复上次查看状态。这就是我通过使用一个活动组来处理的所有内容,并对类别、子类别和产品列表使用不同的活动。但我面临的问题是如何处理方向和背部功能。因为我的大部分内存都被分配了,处理量也增加了。对于这一点,我只想问一下,如果我用一个活动来完成所有这些,那么这是一个有效的方法。感谢Yury的回复,目前我使用了您建议的第二种方法。但当我尝试处理每个活动的方向时,它需要在活动组中处理&因此,我需要公开大量数据,以便我的应用程序可以给我内存不足的错误。正如您在第一个场景中所建议的,如果我使用ViewFlipper&每个功能都是作为flipper的子项添加的,那么我想我可以恢复以前的布局数据。但这对我来说是正确的方法。或者任何其他方式我可以处理这件事。也许对于你的情况,最好考虑碎片。我刚才解释了多个活动的情况。