当从一个活动移动到另一个活动时,在Android中旋转或翻页就像动画一样

时间:2012-07-30 07:26:20

标签: android android-animation

当从一个活动转移到另一个活动时,我想要一个像动画一样的翻转。像这样:

http://lab.smashup.it/flip/

我在SOF上发布了这个解决方案:

Android rotate animation between two activity?

//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);

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>

但结果是:

我将持续时间从“300”更改为“3000”只是为了清楚地检查实际动画。一旦我点击按钮从ActivityA转到ActivityB,屏幕变黑,然后慢慢显示ActivityA,然后突然出现ActivityB

我正在使用Android 2.3.3(API 10)

任何人都可以帮我实现我想要的目标吗?

1 个答案:

答案 0 :(得分:0)

如果您将持续时间从300更改为3000,则只会减慢动画速度。首先使它成为1500,这是很好的注意到动画。其次,如果你想翻页,你可以改变“从”和“到”这个代码的程度

在rotate_in

<?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="1500" />  
<rotate android:fromDegrees="75" android:toDegrees="180" android:pivotX="-25%" />
</set>

在rotate_out

<?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="1500" />  
<rotate android:fromDegrees="180" android:toDegrees="-75" android:pivotX="25%" />
</set>

我希望这是你想要的,这段代码是从左上角到右下角翻页。