aleyn97/router

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

Closed this issue · 3 comments

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

这里有错误

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

这里应该改成

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

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

这里应该改成

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

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

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