第一种:还有一种动画是一个圆圈类型的:
https://blog.csdn.net/shb2058/article/details/73162699
第二种:四种启动方式分别对应:普通的启动方式(即startActivity)、explode、slide和fade;
1.explode(分解) ———从屏幕中间进或出,移动视图。2.slide(滑动)———从屏幕边缘进或出,移动视图。3.fade(淡出)———通过改变屏幕上视图的不透明度达到添加或移除的效果。
使用的方法如下:
对于startActivity的设置时相同的:
startActivity(intent, ActivityOptions.makeSceneTransitionAnimation(MainActivity.this).toBundle());
对于跳转到的页面的设置,注意:必须在setContentView之前进行方式的设置:
if (getIntent().getStringExtra("type").equals("1")) {
getWindow().setEnterTransition(new Explode());
} else if (getIntent().getStringExtra("type").equals("2")) {
getWindow().setEnterTransition(new Slide());
} else if (getIntent().getStringExtra("type").equals("3")) {
getWindow().setEnterTransition(new Fade());
}else {
}
setContentView(R.layout.activity_two);
第三种:共享元素动画
https://blog.csdn.net/baidu_27196493/article/details/80944056
主要:在需要共享的两个元素上设置同一个名字
android:transitionName=“name”
Intent intent = new Intent(ShareAnimatorActivity.this,SecondShareAnimActivity.class);
Bundle bundle = ActivityOptionsCompat.makeSceneTransitionAnimation(ShareAnimatorActivity.this,"name").toBundle();
startActivity(intent,bundle);