我目前正在向backstack添加一个新的片段(在当前片段的顶部):
val fragmentTransaction = fragmentManager?.beginTransaction()
fragmentTransaction?.add(R.id.cl_my_profile_edit, newFragment)?.addToBackStack(null)
fragmentTransaction?.commit()
这是否会暂停运行此代码的当前片段?
如果这没有暂停当前片段
将这样调用onPause()
:
val fragmentTransaction = fragmentManager?.beginTransaction()
fragmentTransaction?.add(R.id.cl_my_profile_edit, newFragment)?.addToBackStack(null)
fragmentTransaction?.commit()
onPause()
是否暂停当前片段?
发布于 2020-07-18 04:38:48
add()
不影响任何其他片段-顾名思义,它只是添加一个新片段,与同一容器中的任何现有片段重叠。
您可以使用replace()
替换任何现有的片段,从而使另一个片段暂停、停止,并将其视图从视图层次结构中删除。这将确保片段在视觉上不会重叠。
您无法安全地调用onPause()
或任何其他on__
方法-这些方法是由框架调用的,而不是由您调用的。
https://stackoverflow.com/questions/62964117
复制相似问题