जब androidx.fragment.app.FragmentContainerView
एक नियमित fragment
ऐप के बजाय नेवीहोस्ट के रूप में उपयोग किया जाता है, तो अभिविन्यास परिवर्तन के बाद गंतव्य पर नेविगेट करने में सक्षम नहीं है।
मुझे निम्नलिखित त्रुटि मिलती है:
java.lang.IllegalStateException: no current navigation node
क्या कोई ऐसा गोचा है जिसके बारे में मुझे पता होना चाहिए कि इसका सही तरीके से उपयोग करना है या क्या मेरे पास नौसैनिकों के इस्तेमाल का तरीका गलत है?
एक दृश्य के साथ सरल गतिविधि xml:
...
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_host_fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
app:navGraph="@navigation/nav_simple" />
...
नेविगेशन कोड:
<?xml version="1.0" encoding="utf-8"?>
<navigation 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"
android:id="@+id/nav_legislator.xml"
app:startDestination="@id/initialFragment">
<fragment
android:id="@+id/initialFragment"
android:name="com.example.fragmenttag.InitialFragment"
android:label="Initial Fragment"
tools:layout="@layout/initial_fragment">
<action
android:id="@+id/action_initialFragment_to_destinationFragment"
app:destination="@id/destinationFragment" />
</fragment>
<fragment
android:id="@+id/destinationFragment"
android:name="com.example.fragmenttag.DestinationFragment"
android:label="Destination Fragment"
tools:layout="@layout/destination_fragment" />
</navigation>
यहाँ एक गितुब रेपो है जहाँ आप आसानी से बग को पुन: उत्पन्न कर सकते हैं: https://github.com/dmytroKarataiev/navHostBug
<fragment
एक में डालने की जरूरत हैFragmentContainerView
।