安卓导航弹出动画问题



我到处找,但找不到解决方案,问题如下:[![在此输入图像描述][1]][1]

导航图/动作

<fragment
android:id="@+id/einstellungenFragment"
android:name="com.medbreaker.medat2go.EinstellungenFragment"
android:label="fragment_einstellungen"
tools:layout="@layout/fragment_einstellungen" >
<action
android:id="@+id/action_einstellungenFragment_to_aboutFragment"
app:destination="@id/aboutFragment"
app:enterAnim="@anim/slide_in_right"
app:exitAnim="@anim/slidefadeout_left"
app:popEnterAnim="@anim/slide_in_left"
app:popExitAnim="@anim/slidefadeout_right"
app:popUpTo="@+id/einstellungenFragment" />
</fragment>

所有的东西都在FragmentContainerView中,在onBackPressed中,我只是在做navController.navigateUp()(它是不可释放的,如果它是由按钮触发的,也是一样的(

主要活动

val navHostFragment = supportFragmentManager.findFragmentById(R.id.main_navigation_host) as NavHostFragment
navController = navHostFragment.navController
NavigationUI.setupWithNavController(nav_view,navController)

这些是依赖

def nav_version = "2.3.5"
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"

奇怪的是,它确实在某个时候起了作用(在play商店发布(,下面是它应该是什么样子(除了更新dependencys之外,我真的没有改变任何东西([![在此输入图像描述][2]][2]

你知道是什么导致了这个问题吗?

根据AppCompat1.3.0-rc01发布说明,AppCompat现在依赖于片段1.3.2。

控制片段之间动画的是片段,而不是导航。片段1.3.2受到这个问题的影响,任何弹出动画都没有运行,特别是在Navigation使用的用例中。

这个问题已经在即将发布的Fragment1.3.3中得到了修复,但在使用Fragment1.3.2时没有可用的解决方法。您可以恢复到AppCompat 1.3.0-beta01,并手动包含对片段1.3.1(而不是1.3.2(的依赖,从而避免该问题:

// Don't use AppCompat 1.3.0-rc01 since it depends on the broken Fragment 1.3.2
def appcompat_version = "1.3.0-beta01"
implementation "androidx.appcompat:appcompat:$appcompat_version"
// Instead add an explicit dependency on Fragment 1.3.1, which is not affected
def fragment_version = "1.3.1"
implementation "androidx.fragment:fragment-ktx:$fragment_version"

最新更新