我到处找,但找不到解决方案,问题如下:[![在此输入图像描述][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"