add(Fragment fragment,String tag) - 在片段堆栈和UI中添加片段

时间:2018-02-12 10:44:46

标签: android android-fragments

在片段事务期间,我们通常使用 add(int containerViewId,Fragment fragment),这将简单的片段添加到我们指定了id的containerview。但最近我遇到了 add(Fragment fragment, String tag) 。这个片段会在片段堆栈和UI中添加吗?

2 个答案:

答案 0 :(得分:0)

Fragment表示一个Activity中的行为或用户界面的一部分。您可以将多个片段组合到一个活动中,以编译多面板UI并将片段重用到多个活动中。片段就像一个活动的模块化部分,它有自己的生命周期,接收自己的输入事件,可以通过正在执行的活动添加或删除(一种可以在不同活动中重用的“子活动”)。

  

每个片段独立,例如添加或删除它们。什么时候   使用片段执行此类事务,您也可以将它们添加到   由活动管理的返回堆栈 - 每个返回堆栈   活动中的条目是片段事务的记录   发生。

所以它添加了片段堆栈。更多详细信息请参考Fragments

答案 1 :(得分:0)

来自Android official

  

使用0 containerViewId调用add(int,Fragment,String)。

这意味着add (Fragment fragment, String tag)方法调用add (int containerViewId, Fragment fragment,String tag) containerViewId值为0.

来自Pooyas的answer

  

" 0"不是有效的资源ID。所以实际上你的片段没有任何视图。

     

可能没有视图的片段,所以这个方法实际上用于那些刚刚创建的片段类型,这些片段只是为了进行一些处理而没有与布局的交互