I want to close any dialog open from nav_graph on some event.
NavHostActivity.kt xml
<fragment
android:id="@+id/fragment"
android:name="androidx.navigation.fragment.NavHostFragment"
android:layout_width="0dp"
android:layout_height="0dp"
app:defaultNavHost="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:navGraph="@navigation/nav_graph_settings" />
nav_graph_setting.xml
<?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"
android:id="@+id/nav_graph_settings"
app:startDestination="@id/settingFragment">
<fragment
android:id="@+id/settingFragment"
android:name="matas.matas.settings.fragment.SettingFragment"
android:label="Min profil”/>
</navigation>
on Click of a button in SettingFragment I call below method
private fun highLightMemberCard(view: View) {
childFragmentManager.let {
val dialog = MemberCardDialogFragment.getInstance(DisplayUtils.dpToPx(requireContext(),65))
val ft = it.beginTransaction()
ft.add(dialog, MemberCardDialogFragment.TAG)
ft.commitAllowingStateLoss()
}
}
I simply want to close MemberCardDialogFragment from Activity on certain event?
Create an interface
implement that interface in your main activity
Call the function in your fragment as