gpt4 book ai didi

android - 如何从点击的地方开始新的 Activity

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:11:26 24 4
gpt4 key购买 nike

当我点击任何图像或文本时, Activity 应该从被点击的图像或文本的位置开始。我试过了

overridingTransition(R.anim.xyz,R.anim.z);

但这是静态的。我想从图像位置开始 Activity ,而不是从屏幕的左右或角落

最佳答案

Activity 共享元素转换

Activity Shared Element Transition

来源:https://github.com/codepath/android_guides/wiki/Shared-Element-Activity-Transition

您需要做的是提供一个过渡名称,两个 Activite 都可以使用该名称来创建过渡动画。

所以您在第一个 Activity 中单击的 ImageView 需要属性 android:transitionName="your_shared_transition_name" 然后您需要为 设置相同的属性目标 Activity 中的 ImageView 也是。

要使用共享转换名称,您需要为开始 Intent 提供一个 Bundle 选项,如下所示:

Intent intent = new Intent(this, TargetActivity.class);
ActivityOptionsCompat options = ActivityOptionsCompat.
makeSceneTransitionAnimation(this, (View)yourImageView, "your_shared_transition_name");
startActivity(intent, options.toBundle());

为了让 Activity 支持这种类型的转换,您需要将属性 android:windowContentTransitions 添加到您的 Theme

...
<item name="android:windowContentTransitions">true</item>
...

-按照上面的链接教程进行更详细的解释

关于android - 如何从点击的地方开始新的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38519065/

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