自定义动画不适用于SingleInstance活动

时间:2017-02-09 18:24:12

标签: android animation single-instance

我试图更改活动过渡的默认动画,我遇到了问题。

我可以更改正常活动的动画,但是当我将launchMode更改为singleInstance时,第一次打开活动时,动画会出现Default。然后,每当我再次调用它时,它会带有正确的自定义动画。

我尝试使用window.attributes.windowAnimations,只使用样式/主题和overridePendingTransition(),结果始终相同。

我看到一些人有同样的问题,但我找到了一个有效的解决方案。

Cancel ALL Animation on SingleInstance

Android animate to singleTask

Android’s overridePendingTransition and singleInstance

1 个答案:

答案 0 :(得分:3)

我遇到了同样的问题。阅读有关Task and back stack的文档后,一切都变得清晰。

这是因为 launchMode singleInstance 创建了singleton activity in new task

注意,task =具有相同组ID的活动集合i。即affinity。默认情况下,app活动具有相同的亲和力i。即应用程序包含单个任务。

通常,过渡动画应用于单个任务中的活动。由于新任务初始化,似乎第一次转换不起作用。虽然新任务未完全初始化,但未创建此任务的活动,因此您将看到空白屏幕的转换。