gpt4 book ai didi

Android不同scaleType之间的共享元素过渡

转载 作者:行者123 更新时间:2023-12-03 17:12:24 24 4
gpt4 key购买 nike

我关注了这个 article of android develop blog ,这是他的source code .

演示效果很好,但通常我们更喜欢使用 centerCrop在图像列表中缩放类型,并使用 fitCenter在详细模式。当我修改代码来实现这一点时,transition 无法处理比例​​类型的变化。从细节 fragment 返回时,动画以错误的比例类型开始。



我找到了 ChangeImageTransform 过渡。文件说:

This Transition captures an ImageView's matrix before and after the scene change and animates it during the transition.

In combination with ChangeBounds, ChangeImageTransform allows ImageViews that change size, shape, or ImageView.ScaleType to animate contents smoothly.



所以我改变了过渡集:

<transitionSet
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="375"
android:interpolator="@android:interpolator/fast_out_slow_in"
android:transitionOrdering="together">
<changeBounds/>
<changeImageTransform/>
</transitionSet>

但是动画变得越来越难看:



如何在不同比例类型之间平滑转换?

最佳答案

我跟着同一个项目GridToPager并面临确切的问题。这里有两个成功的改变。
image_shared_element_transition.xml

<?xml version="1.0" encoding="utf-8"?>
<transitionSet
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="375"
android:interpolator="@android:interpolator/fast_out_slow_in"
android:transitionOrdering="together">
<changeClipBounds/>
<changeTransform/>
<changeBounds/>
<changeImageTransform/>
</transitionSet>

删除 android:clipChildren="false" image_card.xml 中 CardView 的属性

关于Android不同scaleType之间的共享元素过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60363722/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com