活动和片段之间有什么区别?

时间:2014-09-13 11:16:46

标签: android android-fragments android-activity difference

根据我的研究,背板的概念及其存在方式存在显着差异:

活动

  • activitybackstack用户activities放置时 只需按back即可导航回上一个活动 按钮。

  • Activity可以独立存在。

片段

  • fragment被放置到活动时,我们必须请求 在addToBackstack()期间通过调用fragment来保存的实例 transaction

  • Fragment必须住在activity

还有其他差异吗?

5 个答案:

答案 0 :(得分:43)

这是完全不同的两件事:

活动是一个提供屏幕的应用程序组件,用户可以通过该屏幕进行交互以执行某些操作。更多细节: http://developer.android.com/guide/components/activities.html

而Fragment表示Activity中的行为或用户界面的一部分。 http://developer.android.com/guide/components/fragments.html

答案 1 :(得分:19)

根据android开发者文档,片段和放大器之间的区别他们生命周期中的活动。

文档链接http://developer.android.com/guide/components/fragments.html#Lifecycle

  

活动与片段之间生命周期中最显着的差异是如何将其存储在其各自的后台堆栈中。默认情况下,活动被置于由系统停止时由系统管理的活动的后堆栈中(以便用户可以使用“后退”按钮导航回到它,如“任务”和“后台堆栈”中所述)。但是,只有当您在删除片段的事务期间通过调用addToBackStack()显式请求保存实例时,才会将片段放入由主机活动管理的后台堆栈中。

     

否则,管理片段生命周期与管理活动生命周期非常相似。因此,管理活动生命周期的相同实践也适用于片段。但是,您还需要了解的是,活动的生命如何影响片段的生命。

&安培;对于多窗格布局,您必须使用fragment无法实现的activity

答案 2 :(得分:14)

活动与片段之间的主要差异

  1. Activity是一个应用程序组件,它提供用户可以交互的用户界面。 片段是活动的一部分,它将自己的UI与该活动相结合。
  2. 对于平板电脑或移动设备处于横向状态,然后使用片段,我们可以显示两个列表,如onle列表,用于显示状态名称,其他列表将显示单个活动中的状态描述但使用Activity我们无法做同样的事情
  3. 活动不依赖于fragment.but 片段取决于活动,它不能独立存在。
  4. 在Activity中没有使用片段,我们无法创建多窗格UI。但是 在单个活动中使用多个片段,我们可以创建多窗格UI。
  5. 如果我们仅使用Activity创建项目,那么它很难管理 如果我们使用片段,那么项目结构将是好的,我们可以处理 容易。
  6. 活动可能包含0个或多个片段。一个片段可以 在多个活动中重复使用, 所以它的行为就像是活动中可重复使用的组成部分。
  7. 活动有自己的生命周期,但片段有自己的生命周期。
  8. 对于Activity,我们必须在Manifest中提及但不是为了碎片 必需的。

答案 3 :(得分:12)

Activity是用户可以通过其进行交互的应用程序的UI Fragment是Activity的一部分,它是一个子Activity里面的活动 它有自己的生命周期,与活动生命周期平行。

Activity LifeCycle                           Fragment LifeCycle
onCreate()                                    onAttach()
    |                                              |
onStart()______onRestart()                     onCreate()
    |             |                                |
onResume()        |                            onCreateView()
    |             |                                |
onPause()         |                            onActivityCreated()
    |             |                                |
onStop()__________|                             onStart()
    |                                              |
onDestroy()                                     onResume()
                                                   |
                                                onPause()
                                                   |
                                                onStop()
                                                   |
                                                onDestroyView()
                                                   |
                                                onDestroy()
                                                   |
                                                onDetach()

答案 4 :(得分:4)

<强>活动
1.活动是Android平台上应用程序的基本构建块之一。它们是用户与应用程序交互的入口点 并且也是用户如何在应用内或应用之间导航的核心 2.生命周期方法由操作系统托管 3. development community forum

<强>片段
1.片段表示活动中的行为或用户界面的一部分。您可以在单个活动中组合多个片段以构建多窗格UI,并在多个活动中重用片段。您可以将片段视为活动的模块化部分,它具有自己的生命周期,接收自己的输入事件,并且可以在活动运行时添加或删除。 2.生命周期方法由托管的托管 主办活动。
3. Lifecycle of activity

相关问题