不同scaleType之间的Android共享元素转换
创始人
2025-01-09 15:00:19
0

要实现不同scaleType之间的Android共享元素转换,你可以按照以下步骤进行操作:

  1. 在你的起始Activity中,设置共享元素的transitionName属性。例如,如果你要共享一个ImageView,可以在XML布局文件中添加以下代码:

  1. 在你的目标Activity中,也要设置共享元素的transitionName属性。确保与起始Activity中的transitionName相匹配。在XML布局文件中添加以下代码:

  1. 在你的起始Activity中,创建一个共享元素转换的Pair对象。在启动目标Activity之前,使用以下代码来创建Pair对象:
View sharedView = findViewById(R.id.imageView);
String transitionName = getString(R.string.transition_name);
Pair pair = Pair.create(sharedView, transitionName);
  1. 在你的起始Activity中,使用ActivityOptionsCompat类中的makeSceneTransitionAnimation()方法来创建一个ActivityOptionsCompat对象。将Pair对象作为参数传递给该方法:
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, pair);
  1. 在你的起始Activity中,启动目标Activity并使用ActivityOptionsCompat对象作为参数传递给startActivity()方法:
Intent intent = new Intent(this, TargetActivity.class);
startActivity(intent, options.toBundle());
  1. 在你的目标Activity中,找到共享元素的ImageView并设置其scaleType属性为fitCenter。例如:
ImageView imageView = findViewById(R.id.imageView);
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);

这样,不同scaleType之间的共享元素转换就完成了。当你从起始Activity过渡到目标Activity时,共享元素会平滑地从centerCrop转换为fitCenter。

相关内容

热门资讯

黑科技了解(德州ai神器下载)... 黑科技了解(德州ai神器下载)太实锤了素来有挂(透视)科技教程(2026已更新)(哔哩哔哩)1、每个...
黑科技好友房(线上wpk德州a... 黑科技好友房(线上wpk德州ai机器人)太无语了果然存在有挂(透视)透明挂教程(2026已更新)(哔...
黑科技新版(德州ai智能辅助是... 黑科技新版(德州ai智能辅助是什么)太嚣张了原先存在有挂(透视)详细教程(2022已更新)(哔哩哔哩...
黑科技辅助挂(微扑克ai辅助有... 黑科技辅助挂(微扑克ai辅助有用嘛)太实锤了其实是有挂(透视)细节方法(2023已更新)(哔哩哔哩)...
黑科技代打(we-poker辅... 黑科技代打(we-poker辅助软件演示)太离谱了总是是有挂(透视)教你教程(2022已更新)(哔哩...
黑科技插件(微扑克辅助工具)太... 黑科技插件(微扑克辅助工具)太坑了原生是有挂(透视)第三方教程(2024已更新)(哔哩哔哩)是一款可...
黑科技脚本(ai德州辅助软件)... 您好,ai德州辅助软件这款游戏可以开挂的,确实是有挂的,需要了解加威信【136704302】很多玩家...
辅助黑科技(德州ai智能辅助神... 辅助黑科技(德州ai智能辅助神器)太坑了本然真的有挂(透视)靠谱教程(2022已更新)(哔哩哔哩)1...
黑科技攻略(菠萝德州辅助神器)... 黑科技攻略(菠萝德州辅助神器)太坑了起初真的是有挂(透视)辅助教程(2026已更新)(哔哩哔哩)是一...
黑科技数据(Wepoke软件)... 黑科技数据(Wepoke软件)太实锤了好像是有挂(透视)大神讲解(2021已更新)(哔哩哔哩)Wep...