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

Android 活动和片段之间有什么区别?,android,android-fragments,android-activity,difference,Android,Android Fragments,Android Activity,Difference,根据我的研究,倒退的概念及其存在方式存在显著差异: 活动 当活动被放置到用户的活动的后台时 只需按back 按钮 活动可以独立存在 碎片 当一个片段被放置到活动中时,我们必须请求 在片段期间通过调用addToBackstack()保存的实例 交易 Fragment必须存在于活动中 是否还有其他差异?根据android开发者文档,片段和活动在其生命周期中的差异 文档链接 活动和片段在生命周期中最显著的区别在于如何在各自的后堆栈中存储它们。默认情况下,活动被放置到由系统在其停止时管理的活动的

根据我的研究,倒退的概念及其存在方式存在显著差异:

活动
  • 活动
    被放置到用户的
    活动
    后台
    时 只需按
    back
    按钮

  • 活动
    可以独立存在

碎片
  • 当一个
    片段被放置到活动中时,我们必须请求
    在
    片段期间通过调用
    addToBackstack()
    保存的实例
    交易

  • Fragment
    必须存在于
    活动中


是否还有其他差异?

根据android开发者文档,片段和活动在其生命周期中的差异

文档链接

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

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


&对于多窗格布局,您必须使用
片段
,这是
活动
无法实现的,这是两件完全不同的事情:

活动是一个应用程序组件,它提供一个屏幕,用户可以通过该屏幕进行交互来完成某些操作。更多详情:

而片段表示活动中的行为或用户界面的一部分。
活动
1.活动是Android平台上应用程序的基本构建块之一。它们是用户与应用程序交互的入口点 并且也是用户在应用程序内或应用程序之间导航的核心
2.生命周期方法由操作系统托管。
3.

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

3.

活动是应用程序的UI,用户可以通过它进行交互和 片段是活动的一部分,它是活动中的一个子活动 它有自己的生命周期,与活动生命周期平行运行

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

活性和碎片之间的主要区别

  • 活动是一个应用程序组件,它提供了用户可以交互的用户界面。 片段是活动的一部分,它为该活动提供自己的UI
  • 对于平板电脑或移动设备,如果是横向的,那么使用fragment我们可以显示两个列表,如显示状态名称的唯一列表,其他列表将在单个活动中显示状态描述,但使用活动我们不能做同样的事情
  • 活动不依赖于片段,但是 片段依赖于活动,它不能独立存在
  • 如果不在活动中使用片段,我们就无法创建多窗格UI。但是 在单个活动中使用多个片段,我们可以创建多窗格UI
  • 如果我们只使用活动创建一个项目,那么它很难管理,但是 如果我们使用片段,那么项目结构将很好,我们可以轻松地处理它
  • 一个活动可以包含0个或多个片段。一个片段可以是 在多个活动中重用, 因此,它就像活动中的可重用组件
  • 活动有自己的生命周期,但片段有自己的生命周期
  • 对于活动,我们只需要在清单中提及,但对于其片段则不需要提及 必需的
  • 活动使用了大量内存,而片段未使用内存
  • 活动不是重量。碎片是重量

  • 片段不需要在清单中声明。我们有嵌套的片段,但我们不能有嵌套的activitiesrelated post-&Nice解释。有人能详细介绍一下#10吗。与活动相比,是什么使片段更轻?#7没有意义:-\@t3chb0t每个片段都有自己的生命周期事件。对于#9,该片段怎么可能不使用内存?那里一定有脚印吧?