两个Activity之间的Android旋转动画?

8
如何在两个活动之间添加旋转动画。当启动活动时,下一个活动将以旋转动画开始。

以下解决方案是否按您的预期工作? - Archie.bpgc
我将持续时间从“300”更改为“3000”,只是为了清楚地检查实际动画。当我点击按钮从ActivityA转到ActivityB时,屏幕变黑,然后缓慢地出现ActivityA,然后出现ActivityB。 - Archie.bpgc
这个似乎不如我预期的那样工作,Archie 是对的,它显示的就是这样。我们该如何在从一个活动到另一个活动时进行翻转展示呢? - Amit Hooda
1个回答

18

这里有一篇关于如何在两个活动之间转换时添加动画的教程。然而,与文章中使用平移动画不同,您需要使用旋转动画。有关动画的更多信息,请查看文档

将这两个内容结合起来,以下是您需要执行的操作。首先,在调用新活动的位置执行以下操作:

//Calls a new Activity  
startActivity(new Intent(this, NewActivity.class));  

//Set the transition -> method available from Android 2.0 and beyond  
overridePendingTransition(R.anim.rotate_out,R.anim.rotate_in);

然后在你的xml中创建以下两个动画:

rotate_out.xml

<?xml version="1.0" encoding="utf-8"?>   
<set xmlns:android="http://schemas.android.com/apk/res/android">  
   <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />  
   <rotate android:fromDegrees="0" android:toDegrees="90" android:pivotX="25%" />
</set>

rotate_in.xml

<?xml version="1.0" encoding="utf-8"?>   
<set xmlns:android="http://schemas.android.com/apk/res/android">  
   <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />  
   <rotate android:fromDegrees="90" android:toDegrees="0" android:pivotX="-25%" />
</set>
你可以调整fromDegrees、toDegrees和pivotX的值,以获得你想要的效果。

@Ankit:你找到解决方案了吗? - CoDe
是的,我使用旋转动画3D...在Android API中有演示。 - Samir Mangroliya
@ Samir Mangroliya:上述解决方案是否符合您的预期? - Archie.bpgc
这是一个 .@|#12dsa - Pablo Cegarra

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接