首先,要知道共享元素只用于21+版本。
这里只提关键步骤:
1.values-v21文件夹中的style设置同名主题:
<item name="android:windowContentTransitions">true</item>
2.启动activity配置
(1)xml
共享元素设置【此项设置和打开的activity共享元素设置相同】
android:transitionName="shareElementName"
(2)java
//此处shareElementName内容和(1)相同
Bundle options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, view, "shareElementName").toBundle();
ActivityCompat.startActivity(this,intent, options);
3.打开的activity设置
(1)xml
共享元素设置【此项设置和启动的activity共享元素设置相同】
android:transitionName="shareElementName"
(2)java
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
getWindow().setExitTransition(new Explode());
}
ps:此时onBackPress是有共享元素效果的,而finish没有。