Java BottomSheetDialogFragment解除侦听器

Java BottomSheetDialogFragment解除侦听器,java,android,android-fragments,kotlin,bottom-sheet,Java,Android,Android Fragments,Kotlin,Bottom Sheet,我正在使用Android导航组件,并使用以下代码从片段调用BottomSheetDialog: val action = FragmentA.actionFragmentAtoBottomSheetDialog(selectedDate) findNavController().navigate(action) 是否有一种方法可以在取消底部工作表时收听,这样我就可以更新FragmentA UI,或者从BottomSheetDialog调用函数来更新FragmentA UI(标签)这里有一种使用

我正在使用Android导航组件,并使用以下代码从片段调用BottomSheetDialog:

val action = FragmentA.actionFragmentAtoBottomSheetDialog(selectedDate)
findNavController().navigate(action)

是否有一种方法可以在取消底部工作表时收听,这样我就可以更新FragmentA UI,或者从BottomSheetDialog调用函数来更新FragmentA UI(标签)

这里有一种使用导航组件的简单方法。 在定义静态常数(例如KEY_disease)后,在您的blottomSheetDialogFragment中使用此选项

在你的片段A中使用这个

findNavController().currentBackStackEntry?.savedStateHandle?.getLiveData<Boolean>(
            Constants.KEY_DISMISS
        )?.observe(viewLifecycleOwner, {
            it?.let {
                // Update UI or labels
            }
        })
findNavController().currentBackStackEntry?.savedStateHandle?.getLiveData(
常量。键
)?观察(视图生命周期所有者{
是吗?让我来{
//更新用户界面或标签
}
})
findNavController().currentBackStackEntry?.savedStateHandle?.getLiveData<Boolean>(
            Constants.KEY_DISMISS
        )?.observe(viewLifecycleOwner, {
            it?.let {
                // Update UI or labels
            }
        })