Android:如何在finish()之后从不同的活动中设置多个视图的动画?
我想有一个新活动视图的缩放动画,与移动按钮平行,旧活动的图像视图在屏幕外移动的不同方向。 overridependingtransition()需要xml资源,但您不能为单个视图编写代码,例如缩放。 使用Java代码,我无法启动新活动(使用动画)同时启动旧活动的动画。 我怎样才能做到这一点? 最好使用XML编码 下面是我想做的一个例子:Android:如何在finish()之后从不同的活动中设置多个视图的动画?,android,xml,transition,Android,Xml,Transition,我想有一个新活动视图的缩放动画,与移动按钮平行,旧活动的图像视图在屏幕外移动的不同方向。 overridependingtransition()需要xml资源,但您不能为单个视图编写代码,例如缩放。 使用Java代码,我无法启动新活动(使用动画)同时启动旧活动的动画。 我怎样才能做到这一点? 最好使用XML编码 下面是我想做的一个例子: 您描述的内容看起来像是两个活动之间的过渡。您可以使用新活动转换的API。请看这里: 请记住,兼容性级别为21。它只适用于棒棒糖设备。 如果您想在21岁以下兼容,
您描述的内容看起来像是两个活动之间的过渡。您可以使用新活动转换的API。请看这里: 请记住,兼容性级别为21。它只适用于棒棒糖设备。 如果您想在21岁以下兼容,您可以尝试自己实现它
- 第一步是通过在startActivity()之后调用overridePendingTransition(0,0)来覆盖转换
- 第二步是使新活动的背景透明,并放置要设置动画的视图。
例如,如果希望将第一个活动中的imageview放大并移动到新活动中的新位置,则可以根据意图将imageview的坐标和大小发送到新活动,然后在新活动中移动并缩小imageview,以与上一个活动中的imageview重叠(因为背景是透明的)。
要将其设置为真实大小,只需将scaleX()scaleY()设置为1(新活动中的原始大小),将translationX()translationY()设置为0(新活动中的原始位置)作为其位置 - 然后,在新活动的布局完成后,可以将视图设置为新位置的动画。请参阅