gpt4 book ai didi

android - 添加到 FragmentTransaction 的 addSharedElement api 如何工作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:54:38 25 4
gpt4 key购买 nike

Api 21 添加了一个名为 addSharedElement 的 api,它看起来应该与具有 Activity 转换的共享 View 类似地使用,请参阅:http://developer.android.com/reference/android/app/FragmentTransaction.html#addSharedElement(android.view.View , java.lang.String))

我试图通过在两个 fragment 的 View 上设置 android:transitionName 然后在 FragmentTransaction 上调用 addSharedElement 来使用此 api。在该 fragment 上,我调用了 setSharedElementEnterTransition(new ChangeImageTransform());

然而,这没有任何效果。

我在本月早些时候发布的 Lollipop 预览版上运行它。

最佳答案

api addSharedElement(view, name) 会将退出 Fragment 中的 View View (它可以具有任何非空的 transitionName)与进入 Fragment 中具有 transitionName 名称的 View 相匹配。这允许您从离开的 Fragment 和进入的 Fragment 中获得不同的 transitionName。

当您有多个 View 可以作为 fragment 中的共享元素时,这是一个常见的用例。例如,您设备上的图像列表。当您单击其中一个时,它会将 Fragment 替换为具有详细 View 或单个 ImageView 的新 fragment 。该列表将为每个图像提供一个项目唯一的 transitionName。例如,这可以是行 ID 或内容 URI。在单 ImageView 中,transitionName 可以是常量。假设它是“largeImage”。您可以轻松地将它们匹配起来:

fragmentTransaction.addSharedElement(imageIcon, "largeImage");

关于android - 添加到 FragmentTransaction 的 addSharedElement api 如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26642780/

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