在片段事务期间,我们通常使用 add(int containerViewId,Fragment fragment),这将简单的片段添加到我们指定了id的containerview。但最近我遇到了 add(Fragment fragment, String tag) 。这个片段会在片段堆栈和UI中添加吗?
答案 0 :(得分:0)
Fragment表示一个Activity中的行为或用户界面的一部分。您可以将多个片段组合到一个活动中,以编译多面板UI并将片段重用到多个活动中。片段就像一个活动的模块化部分,它有自己的生命周期,接收自己的输入事件,可以通过正在执行的活动添加或删除(一种可以在不同活动中重用的“子活动”)。
每个片段独立,例如添加或删除它们。什么时候 使用片段执行此类事务,您也可以将它们添加到 由活动管理的返回堆栈 - 每个返回堆栈 活动中的条目是片段事务的记录 发生。
所以它添加了片段堆栈。更多详细信息请参考Fragments
答案 1 :(得分:0)
使用0 containerViewId调用add(int,Fragment,String)。
这意味着add (Fragment fragment, String tag)
方法调用add (int containerViewId, Fragment fragment,String tag)
containerViewId
值为0.
来自Pooyas的answer:
" 0"不是有效的资源ID。所以实际上你的片段没有任何视图。
可能没有视图的片段,所以这个方法实际上用于那些刚刚创建的片段类型,这些片段只是为了进行一些处理而没有与布局的交互