Why addOnDestinationChangedListener
not working, I want to know when the fragment change.
Error
Unable to start activity ComponentInfo{com.test/com.test.MainActivity}: java.lang.IllegalStateException: Activity com.test.MainActivity@7cc430 does not have a NavController set on 2131296700
activity_main.xml
<androidx.fragment.app.FragmentContainerView
android:id="@+id/view_821"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/navigation_main" />
MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
activityMainBinding = ActivityMainBinding.inflate(getLayoutInflater());
setContentView(activityMainBinding.getRoot());
NavController navController = Navigation.findNavController(this, R.id.view_821);
navController.addOnDestinationChangedListener((controller, destination, arguments) -> {
Log.w("ABC", "A");
});
}