当前位置:   article > 正文

【Android14 ShellTransitions】(二)创建Transition_shell transition

shell transition

在这里插入图片描述

这一节的内容在WMCore中,主要是创建Transition,初始化其状态为PENDING。
还是我们之前说的,我们以在Launcher界面点击App图标启动某个App为例,来分析Transition的一般流程。启动Activity的流程,在ActivityStarter.startActivityUnchecked中:

在这里插入图片描述
具体的调用堆栈为:

在这里插入图片描述

ActivityStarter.startActivityUnchecked的主要内容为:
1)、首先调用TransitionController.createAndStartCollecting方法创建一个类型为TRANSIT_OPEN的Transition对象。
2)、将当前启动的ActivityRecord收集到刚刚创建的Transition对象中。
3)、调用ActivityStarter.startActivityInner去走具体的启动Activity流程。
4)、最后在ActivityStarter.handleStartResult中,调用TransitionController.requestStartTransition来启动动画。
在这一节中我们只分析和创建Transition相关的部分,即TransitionController.createAndStartCollecting的内容,余下的部分在其它章节中再进行分析。

在这里插入图片描述

首先创建相应类型的一个Transition对象。
能看到创建Transition的地方还是挺多的:

在这里插入图片描述

然后Transition的初始状态就是STATE_PENDING,不需要额外去设置(也没有额外的地方去设置,毕竟Transition用完之后就不用了,不存在循环利用的情况):

在这里插入图片描述

这一节的内容还是比较简单的,在WMCore侧,根据动画的类型创建相应的Transition对象,Transition的初始状态为STATE_PENDING。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/952680
推荐阅读
相关标签
  

闽ICP备14008679号