aleyn97 / router

Routing framework for Android.
Apache License 2.0
96 stars 11 forks source link

enterAnim 和 exitAnim 默认值都是 builder 里面的 -1 导致覆盖系统的默认动画 #4

Closed xiaoyvyv closed 10 months ago

xiaoyvyv commented 10 months ago

https://github.com/aleyn97/router/blob/bb228d08cb74420b3874e26d23f5a94abecd520c/router/src/main/java/com/aleyn/router/core/Navigator.kt#L127-L129

这里有错误

enterAnimexitAnim 默认值都是 builder 里面的 -1,这里没有判断为 -1 时跳过,然后会覆盖系统的默认动画。

xiaoyvyv commented 10 months ago

这里应该改成

if ((enterAnim != -1 || exitAnim != -1) && currentContext is Activity) { 
     currentContext.overridePendingTransition(enterAnim, exitAnim) 
 } 

因为有时候会手动设置取消转场动画会设置为0,不应该跳过

aleyn97 commented 10 months ago

这里应该改成

if ((enterAnim != -1 || exitAnim != -1) && currentContext is Activity) { 
     currentContext.overridePendingTransition(enterAnim, exitAnim) 
 } 

因为有时候会手动设置取消转场动画会设置为0,不应该跳过

嗯嗯,上午看到你提的 另一个 Issues 我也发现了。Navigator.Builder 的第二个构造函数也少了 exitAnim 的赋值。晚上有时间的话我发个修复版

aleyn97 commented 10 months ago

v1.0.4