android - 无法实例化 fragment androidx.navigation.fragment.NavHostFragment

标签 android android-architecture-components android-jetpack android-architecture-navigation

错误

无法实例化 fragment androidx.navigation.fragment.NavHostFragment:确保类名存在,是公共(public)的,并且有一个公共(public)的空构造函数。

Activity 布局

 <fragment
        android:id="@+id/my_nav_host_fragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:name="androidx.navigation.fragment.NavHostFragment"
        app:defaultNavHost="true"
        app:navGraph="@navigation/app_nav" />

Activity
class HomeActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_home)
    }
}

分段
class MovieListFragment : Fragment() {
    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
                              savedInstanceState: Bundle?): View? {
        return inflater.inflate(R.layout.fragment_movie_list, container, false)
    }
}

使用的依赖:
implementation('android.arch.navigation:navigation-fragment-ktx:1.0.0-alpha07') {
    exclude group: "com.android.support"
}
implementation('android.arch.navigation:navigation-ui-ktx:1.0.0-alpha07') {
    exclude group: "com.android.support"
}

最佳答案

如果它只发生在 proguarded 版本上,您可能忘记添加 proguard 规则。在您的 proguard 文件中添加以下规则

-keepnames class androidx.navigation.fragment.NavHostFragment

关于android - 无法实例化 fragment androidx.navigation.fragment.NavHostFragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53153237/

相关文章:

android - 在 native Android 应用程序中使用 WebView 整个布局有用吗?

android - 检测我们在 Android studio 中是否有内存泄漏

Android Studio 金丝雀 2020.3.1 : Kotlin Unresolved References

android - 忽略 navigate() 调用 : FragmentManager has already saved its state

android - 来自位图源的图像的 LazyColumn 闪烁/闪烁

android - 抽屉导航关闭并暂停

android - android ndk中的unicode支持

android - 如何以及在何处使用 Transformations.switchMap?

android - 使用自定义转换器的两种方式数据绑定(bind)

android - LiveData_LifecycleBoundObserver_LifecycleAdapter 无法转换为 GeneratedAdapter