当前位置: 首页 > 知识库问答 >
问题:

片段[duplicate]的add()和replace()方法之间的基本区别

唐元青
2023-03-14

Fragment的replace和add方法是如何以不同的方式工作的,在现实生活中是否存在需要这些方法用于特定目的的场景。

共有2个答案

洪飞白
2023-03-14
fragmentTransaction.replace(int containerViewId, Fragment fragment, String tag)

描述-它替换添加到容器中的现有片段。这本质上与调用remove(Fragment)所有当前添加的片段(使用相同的ContainerWebID添加)相同,然后调用add(int,Fragment,String)使用此处给出的相同参数。

fragmentTransaction.add(int containerViewId, Fragment fragment, String tag)

Description-它向活动状态添加一个片段。此片段还可以选择将其视图(如果fragment.onCreateView返回非null)放入活动的容器视图中。

有关碎片的更多详细信息,请访问以下官方Android开发者链接...http://developer.android.com/guide/components/fragments.html

杜轩昂
2023-03-14

重要的区别是:

replace删除现有片段并添加新片段。。

但是add保留现有片段并添加新片段,这意味着现有片段将处于活动状态,并且不会处于“暂停”状态,因此当按下后退按钮时,不会为现有片段调用onCreateView()(添加新片段之前存在的片段)。

有关更多信息,请访问此对话。

 类似资料:
  • 调用这些方法的主要区别是什么: 替换已经存在的片段,将片段添加到活动状态,并将活动添加到后堆栈,这意味着什么? 其次,使用,此搜索是通过/方法还是通过方法添加的标记?

  • 我有一个活动- 。在这个活动中,我有两个片段,这两个片段都是我在xml中以声明方式创建的。 我正在尝试将用户输入的文本的传递到Fragment B 我知道一个片段可以使用获得对其活动的引用。所以我猜我会从那里开始?

  • 问题内容: 我最近修复了一个错误,但仍然不知道为什么会发生。我在Django模型中将以下时间戳(纪元)转换为datetimefield: 上面的 返回的datetime对象始终 与真实的纪元时间(在我们的时区中)相距 39分钟 。 我设法通过移除来解决了这一问题,而是将时区放入了方法中: 那么,指定方法内部与创建对象之后进行操作有什么区别?为什么返回错误的时间? 问题答案: 请注意第一种情况下的奇

  • 问题内容: 我目前正在尝试了解在自定义类上使用和之间的区别。有许多网站说使用’+’运算符会导致使用特殊方法-到目前为止还不错。 但是,当我运行以下示例时,我得到两个不同的结果。 结果: 现在,据我了解,执行Python时检查/执行int方法-发现没有实现添加int和C对象的实现-返回NotImplemented- 这使Python知道检查对象C并执行其中的代码。 为什么执行代码会导致结果,但是其他

  • 问题内容: 除了以后使用正则表达式之外,java.lang.String 和方法之间有什么区别?对于简单的替代喜欢,更换用 ,有什么不同? 问题答案: 在中,该replace方法可以采用一对或一对(其中是子类,因此很高兴采用一对)。该方法将替换所有出现的或。在另一方面,这两个参数和正则表达式(正则表达式)。使用错误的功能可能会导致细微的错误。

  • 本文向大家介绍Android ViewPager基本用法和片段,包括了Android ViewPager基本用法和片段的使用技巧和注意事项,需要的朋友参考一下 示例 AViewPager允许在活动中显示多个片段,可通过向左或向右翻转来导航。甲ViewPager需要被馈送通过使用任一视图或片段的PagerAdapter。 但是,在使用片段分别为FragmentPagerAdapter和的情况下,有两