getFragmentManager() 在 Kotlin 中不起作用

2024-03-19

我正在尝试启动一个包含在我的项目本地库模块中的 DialogFragment。我调用它的类正在使用Kotlin我在函数上收到以下错误获取FragmentManager(): 不能使用提供的参数调用以下函数

  import com.github.adamshurwitz.materialsearchtoolbar.SearchDialogFragment
    ...

    private var searchDialogFragment: SearchDialogFragment? = null
    ...

    searchDialogFragment = SearchDialogFragment()
    searchDialogFragment.show(supportFragmentManager, null)

我有另一个项目,我正在其中调用它Java并且使用以下方法可以正常工作:获取SupportFragmentManager().

我尝试过的解决方案:

searchDialogFragment.show(getFragmentManager(), null)
searchDialogFragment.show(supportFragmentManager, null)
searchDialogFragment.show(supportFragmentManager as FragmentManager, null)
searchDialogFragment.show(supportFragmentManager.beginTransaction(), null)
searchDialogFragment.show(supportFragmentManager(), null)

自从你的searchDialogFragment变量在声明中用问号标记为可为空,您需要使用安全调用运算符?.。它仅在以下情况下执行searchDialogFragment不为空:

searchDialogFragment?.show(supportFragmentManager, null)

或者您可以使用以下命令将变量声明为非空,但仍然可以稍后在代码中对其进行初始化:

private lateinit var searchDialogFragment: SearchDialogFragment
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

getFragmentManager() 在 Kotlin 中不起作用 的相关文章

随机推荐