如何在新开场前添加动画activity?
How to add animation before the opening of a new activity?
我想在新Android空Activity开场前加个动画。类似于在当前 activity 之上播放的色度键控视频之类的东西,在它结束时,第二个 activity 打开。
您创建了一个包含您的动画的启动画面 activity,并实施了一个 AnimationListener。在方法 onAnimationEnd()
中,您创建将您带到第二个 activity 的意图。不要忘记将 splash activity 设置为清单上的 Launcher activity。
animationObject.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
Intent intent = new Intent (SplashActivity.this, MainActivity.class);
startActivity(intent); }
@Override
public void onAnimationRepeat(Animation animation) {
}
});
编辑: 如果您想用媒体播放器播放视频,您可以使用 playback listener 和 运行 与 [=12= 相同的意图]
在您的 startActivity 方法之后使用 overridePendingTranistion 并将动画放入其中
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(ActivityA.this, ActivityB.class));
overridePendingTransition(R.anim.enter, R.anim.exit);
}
});
xml动画如下
enter.xml:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:duration="500"
android:fromXDelta="100%"
android:fromYDelta="0%"
android:toXDelta="0%"
android:toYDelta="0%" />
</set>
exit.xml:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:duration="500"
android:fromXDelta="0%"
android:fromYDelta="0%"
android:toXDelta="-100%"
android:toYDelta="0%" />
</set>
我想在新Android空Activity开场前加个动画。类似于在当前 activity 之上播放的色度键控视频之类的东西,在它结束时,第二个 activity 打开。
您创建了一个包含您的动画的启动画面 activity,并实施了一个 AnimationListener。在方法 onAnimationEnd()
中,您创建将您带到第二个 activity 的意图。不要忘记将 splash activity 设置为清单上的 Launcher activity。
animationObject.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
Intent intent = new Intent (SplashActivity.this, MainActivity.class);
startActivity(intent); }
@Override
public void onAnimationRepeat(Animation animation) {
}
});
编辑: 如果您想用媒体播放器播放视频,您可以使用 playback listener 和 运行 与 [=12= 相同的意图]
在您的 startActivity 方法之后使用 overridePendingTranistion 并将动画放入其中
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startActivity(new Intent(ActivityA.this, ActivityB.class));
overridePendingTransition(R.anim.enter, R.anim.exit);
}
});
xml动画如下 enter.xml:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:duration="500"
android:fromXDelta="100%"
android:fromYDelta="0%"
android:toXDelta="0%"
android:toYDelta="0%" />
</set>
exit.xml:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:duration="500"
android:fromXDelta="0%"
android:fromYDelta="0%"
android:toXDelta="-100%"
android:toYDelta="0%" />
</set>