Tengo tales configuraciones en el proyecto:
aplicar complemento: 'androidx.navigation.safeargs'
ext.navigationVersion = "1.0.0-beta02"
classpath "android.arch.navigation:navigation-safe-args-gradle-plugin:$navigationVersion"
implementación "android.arch.navigation:navigation-fragment-ktx:$navigationVersion" implementación "android.arch.navigation:navigation-ui-ktx:$navigationVersion"
nav_graph.xml:
<fragment android:id="@+id/loginFragment" android:name="com.terkacleaning.ui.login.LoginFragment" android:label="fragment_login" tools:layout="@layout/fragment_login"> <action android:id="@+id/action_loginFragment_to_homeFragment" app:destination="@id/homeFragment" app:exitAnim="@anim/slide_out_left" app:popExitAnim="@anim/slide_out_right" app:popUpTo="@id/loginFragment" app:popUpToInclusive="true" /> </fragment> <fragment android:id="@+id/homeFragment" android:name="com.terkacleaning.ui.home.HomeFragment" android:label="fragment_home" tools:layout="@layout/fragment_home"/>Se generan métodos:
LoginFragmentDirections.actionLoginFragmentToHomeFragment()Pero estos métodos no funcionan.
Según la documentación de Safe Args , construir un objeto NavDirections no es suficiente; debe pasarlo a navController.navigate() :
navController.navigate( LoginFragmentDirections.actionLoginFragmentToHomeFragment())