Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.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 当从嵌套的navgraph中向上导航(后退)时,如何定义退出/弹出动画?_Android - Fatal编程技术网

Android 当从嵌套的navgraph中向上导航(后退)时,如何定义退出/弹出动画?

Android 当从嵌套的navgraph中向上导航(后退)时,如何定义退出/弹出动画?,android,Android,我有一个navgraph,它包含一个嵌套的navgraph,如下所示 <navigation xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"

我有一个navgraph,它包含一个嵌套的navgraph,如下所示

<navigation xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/outer_graph.xml"
    app:startDestination="@id/startFrag">

    <include app:graph="@navigation/nested_graph" />

    <fragment
        android:id="@+id/startFrag"
        android:name="com.myapp.StartFrag">

        <action
            android:id="@+id/toNestedGraph"
            app:destination="@id/nested_graph.xml"/>
    </fragment>


    <!-- destinations omitted for brevity-->

</navigation>

我想定义一个自定义动画,在将嵌套的navgraph从navstack弹出时播放(在本例中,使用的是后退键,而不是定义的导航动作)。我不确定在这里进行的最佳方式

我可以看到一些定义退出动画的选项,但没有一个是真正理想的。我可以
将外部导航图放入嵌套的导航图中,定义一个带有动画的动作,并
popTo
原始导航图,同时覆盖
super
backpress功能,这看起来有点像是一种黑客的解决方法。我还可以手动覆盖back press挂起的动画,但这似乎是一个有点粗糙的解决方法,而且有点奇怪,当两个组件都在navgraph中定义时,需要使用它。然而,我知道Android中的许多东西都是违反直觉的,而且导航架构库缺少一些功能,因此其中一个可能是实现这一点的最佳(或唯一)方法

有没有比这更好的方法让我错过了?谢谢