【Android14 ShellTransitions】(二)创建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。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值