参考
动画框架(4)-共享元素动画和场景切换
Demo
介绍
从AActivity跳转到BActivity, 指定的view会有动画
实现
AActivity.java
Intent intent = new Intent(this, BActivity.class);
Pair<View, String> pair1 = new Pair<View, String>(mIv, "这是共享元素tag");
ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(this, pair1, pair2);
startActivity(intent, options.toBundle());
activity_a.xml
<ImageView
android:id="@+id/iv_a"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/img"
android:transitionName="这是共享元素tag" />
activity_b.xml
<ImageView
android:id="@+id/iv_b"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/img"
android:transitionName="这是共享元素tag" />
要点说明
- 需要定义 动画名称
3处usage, Axml的组件, Bxml的组件, 使用startActivity的含有bundle方法 - 关闭界面时, 调用
super.onBackPressed() 才会含有动画
|