kotlin 中的 supportFragmentManager.commit 不起作用

Jak*_*lov 5 java android fragment kotlin

任何人都可以帮我解决这个问题吗?在我的片段中 supportFragmentManager.commit{} 不起作用。Android Studio 没有意识到这一点,我不知道该怎么办。我在 kotlin 项目中工作

在此处输入图片说明

cac*_*acs 6

commit {}方法(带有 lambda 中的事务)是Fragment KTX库提供的扩展函数。如果您还没有,则需要在以下位置添加此依赖项build.gradle

dependencies {
    implementation "androidx.fragment:fragment-ktx:1.2.5"
}
Run Code Online (Sandbox Code Playgroud)

然后 Android Studio 应该自动提供commit通过导入来修复调用。如果没有(有时可能会很尴尬),请将其添加到您的导入中:

import androidx.fragment.app.commit
Run Code Online (Sandbox Code Playgroud)

也许这些也是,我不知道它们是否有必要

import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentTransaction
Run Code Online (Sandbox Code Playgroud)

您可能需要删除一些其他匹配的导入,以便您只使用这些androidx版本