【发布时间】:2021-05-24 21:33:11
【问题描述】:
在这里,当我单击“已保存的结果”时,它会显示所有带有日期的已保存结果。
The image showing saved results in SavedResultsFragment
Navigation Layout
当我点击任何项目时,它应该在ShowSavedResltsFragment 中显示该点击项目的所有详细信息,但在状态下应用程序崩溃并且IllegalStateException 引发了片段类未设置。
The image showing navigation layout and code
The image showing code logic where trying to switch to ShowResultsFragment from SavedResultFragment
我正在使用安全参数,当我尝试在 SavedResultFragment 和 ShowSavedResultsFragment 之间导航时,我遇到了所有问题。我试图搜索官方文档和 Stack Overflow,但没有找到我所面临的任何东西。官方文档提示 navHostfragment 未正确实现,然后这可能会触发上述异常,但我正在使用他们的官方文档,但我在这里所做的唯一事情是通过 Navigation Drawer 导航到 Fragment,然后从该片段尝试导航到另一个片段,这就是它中断的地方。
Image showing exception 编辑:NavHostFragment 代码
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
</data>
<merge>
<androidx.drawerlayout.widget.DrawerLayout
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<androidx.fragment.app.FragmentContainerView
android:id="@+id/myNavHostFragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="0dp"
android:layout_height="0dp"
app:defaultNavHost="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:navGraph="@navigation/navigation" />
</androidx.constraintlayout.widget.ConstraintLayout>
<com.google.android.material.navigation.NavigationView
android:id="@+id/navVew"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/nav_header"
app:menu="@menu/nav_drawer_menu" />
</androidx.drawerlayout.widget.DrawerLayout>
</merge>
</layout>
【问题讨论】:
-
请在您定义
NavHostFragment的地方添加代码。 -
添加
NavHostFragement的代码。
标签: android kotlin android-fragments navigation-drawer