要实现不同scaleType之间的Android共享元素转换,你可以按照以下步骤进行操作:
View sharedView = findViewById(R.id.imageView);
String transitionName = getString(R.string.transition_name);
Pair pair = Pair.create(sharedView, transitionName);
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, pair);
Intent intent = new Intent(this, TargetActivity.class);
startActivity(intent, options.toBundle());
ImageView imageView = findViewById(R.id.imageView);
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
这样,不同scaleType之间的共享元素转换就完成了。当你从起始Activity过渡到目标Activity时,共享元素会平滑地从centerCrop转换为fitCenter。