解决navigation中使用app:popEnterAnim不生效问题

前言

最近在xml中使用navigation的页面切换动画时候遇到一个奇葩的问题:

以下3个属性都能生效

app:enterAnim

app:exitAnim

app:popExitAnim

唯独app:popEnterAnim不生效, 百思不得其解,因为工程已经很大了,排查起来比较麻烦,经过反复排查终于找到了是哪里对它造成了影响。

环境

AndroidStudio: v4.2.1
wrapper gradle: gradle-6.7.1-bin.zip
com.android.tools.build:gradle:4.2.1

排查过程

  1. 既然此工程不生效那么新建工程能不能行?结果新建的工程没有问题,是正常的,代码和类名全一样,结果旧工程就是不行。

那么现在就是对比之前工程和现在的工程有什么不一样的地方。当然肯定和代码没关系,因为拷贝的同一份代码,那么肯定就是gradle配置文件的问题了。

对比gradle

1.对比gradle版本,但版本是一样的。

2.那就只能对比gradle的配置文件内容上有什么不同了。

因为我工程里用到了hilt,最终找到了原因:hiltVersion版本不一样

hiltVersion 2.3.8   //有问题
hiltVersion 2.4.0   //正常

所以只要将hiltVersion版本升级到2.4.0就可以了。这应该是google发布的hiltVersion 2.3.8版本有bug,导致此问题产生,具体是什么原因,未深究。

转载请注明出处:http://www.wolfnx.com/2021/11/08/AndroidStudioPopEnterAnimError

作者 : wolfnx
邮箱 : wolfnx@outlook.com
邮箱2 : lostnx@gmail.com

Click Me