Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android导航-无法从对话框目标获取保存的状态句柄_Android_Kotlin_Android Architecture Navigation_Android Navigation Graph - Fatal编程技术网

Android导航-无法从对话框目标获取保存的状态句柄

Android导航-无法从对话框目标获取保存的状态句柄,android,kotlin,android-architecture-navigation,android-navigation-graph,Android,Kotlin,Android Architecture Navigation,Android Navigation Graph,我正在尝试将数据从对话框目标传递到片段。但如果我连续尝试同样的方法,它就不会被调用。单次试一试,效果很好 下面是我的对话框片段中的代码: val navBackStackEntry = findNavController().getBackStackEntry(R.id.fragment_name) 我一按按钮就这样做了 navBackStackEntry.savedStateHandle.set(ConstantUtils.SAVED_DATE, "") dismiss(

我正在尝试将数据从对话框目标传递到片段。但如果我连续尝试同样的方法,它就不会被调用。单次试一试,效果很好

下面是我的对话框片段中的代码:

val navBackStackEntry = findNavController().getBackStackEntry(R.id.fragment_name)
我一按按钮就这样做了

navBackStackEntry.savedStateHandle.set(ConstantUtils.SAVED_DATE, "")
dismiss()
在fragment的
onResume
中,我观察到如下数据:

 val savedStateHandle = findNavController().currentBackStackEntry?.savedStateHandle
savedStateHandle?.getLiveData<String>(ConstantUtils.SAVED_DATE)?.observe(viewLifecycleOwner, 
Observer { date ->
               //Code goes here
                savedStateHandle.remove<String>(ConstantUtils.SAVED_DATE)
            })
val savedstateholder=findNavController().CurrentBackbackEntry?.savedstateholder
savedStateHandle?.getLiveData(ConstantUtils.SAVED_DATE)?.observe(viewLifecycleOwner,
观察员{日期->
//代码在这里
savedStateHandle.remove(ConstantUtils.SAVED_日期)
})
当我点击对话框中的按钮时,它会进入
片段的
继续
,如果我再次进入对话框并点击按钮,它不会返回
片段的
继续


请告诉我我犯了什么错误。

你找到解决办法了吗?@AlexZaraos是的,我找到了一个方法。你如何解决这个问题?在我的例子中,为了使用FragmentResultListener,我将Fragment和FragmentKtx更新为1.3.0,但我想知道如何使用savedStateHandle@AlexZaraos我用了一面旗子,我把它修好了。没有任何直接的方法……你找到解决办法了吗?@AlexZaraos是的,我找到了一种方法。你如何解决这个问题?在我的例子中,为了使用FragmentResultListener,我将Fragment和FragmentKtx更新为1.3.0,但我想知道如何使用savedStateHandle@AlexZaraos我用了一面旗子,我把它修好了。没有任何直接的方法。。。