要实现Android共享元素过渡动画,可以按照以下步骤进行操作:
ActivityOptionsCompat.makeSceneTransitionAnimation()方法创建一个ActivityOptionsCompat对象,并将共享元素的View作为参数传入。Intent intent = new Intent(this, TargetActivity.class);
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, startingImage, "my_transition_name");
startActivity(intent, options.toBundle());
getWindow().setSharedElementEnterTransition()方法设置共享元素的进入动画。getWindow().setSharedElementEnterTransition(TransitionInflater.from(this).inflateTransition(android.R.transition.move));
ImageView targetImage = findViewById(R.id.target_image);
targetImage.setLayoutParams(startingImage.getLayoutParams());
这样就完成了Android共享元素过渡动画的实现。当启动目标Activity时,起始Activity中的共享元素会平滑地过渡到目标Activity中的对应元素位置。