专做情侣装网站建立网站需要多少钱
DialogFragment一种情况是在当前Activity上启动,一种情况是在Fragment上启动,判断当前fragmentManager上是否有,以及遍历判断子fragment上是否有,即可确定是否有DialogFragment展示。
使用方式:
// supportFragmentManager为当前Activity的fragmentManager
hasDialogFragment(supportFragmentManager)
private fun hasDialogFragment(fragmentManager: FragmentManager): Boolean {if (fragmentManager.fragments.find {it is DialogFragment} != null) {// 存在弹框return true}if (fragmentManager.fragments.find {// 子片段管理器中含有弹框fragmentHasDialogFragment(it)} != null) {// 子Fragment上含有弹框return true}return false}/*** 遍历查询fragment上是否有dialogFragment*/private fun fragmentHasDialogFragment(fragment: Fragment): Boolean {val childFragments = fragment.childFragmentManager.fragmentsif (childFragments.isEmpty()) {return false}childFragments.forEach {if (it is DialogFragment) {return true}if (fragmentHasDialogFragment(it)) {return true}}return false}