效果說明圖:
1、先在需要轉場動畫的view上面聲明他的轉場名稱transitionName:(目標view也要加這個transitionName)
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:transitionName="share" />
2、然後在跳轉界面前用startActivity(Intent intent, Bundle options)這種跳轉方式:
final View image = findViewById(R.id.image);
image.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final Intent intent = new Intent(MainActivity.this, MainActivity2.class);
final ActivityOptionsCompat optionsCompat = ActivityOptionsCompat.makeSceneTransitionAnimation(MainActivity.this, image, "share");
MainActivity.this.startActivity(intent, optionsCompat.toBundle());
}
});
完成。
參考:https://blog.csdn.net/u011106915/article/details/77576409
另外個人實測可以不是同一種類型view的切換,比如可以從TextView切換成FrameLayout,只因背景是相同的,效果圖如下: