我希望在单击按钮时从 Activity 重定向到 Fragment 时进行转换。 我在 Activity 中单击按钮时使用以下代码,但在从 Activity 重定向到 Fragment 时无法显示转换,但相同的代码在 Fragment 到 Fragment 重定向之间工作正常。
FragmentTransaction ft = act.getSupportFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.slide_from_bottom,
R.anim.slide_to_top,
R.anim.slide_from_top,
R.anim.slide_to_bottom);
ft.add(R.id.framContainer, new
AddMealFragment()).addToBackStack(null).commit();
slide_from_bottom.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="100%p" android:toYDelta="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:duration="@integer/slide_animation_duration"/>
</set>
slide_to_top.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="0" android:toYDelta="-100%p"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:duration="@integer/slide_animation_duration"/>
</set>
slide_from_top.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="-100%p" android:toYDelta="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:duration="@integer/slide_animation_duration"/>
</set>
slide_to_bottom.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="0" android:toYDelta="100%p"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:duration="@integer/slide_animation_duration"/>
</set>
最佳答案
Activity 到 Fragment 之间的过渡动画
It determines how shared element views are animated from one Activity/Fragment to another during a scene transition.
该项目解释了 Android 中如何从一个 Activity 过渡到另一个 Activity。和动画通过单击列表项在另一个 Activity 中显示各个项目的详细信息的结果。当从一个 Activity 过渡到另一个 Activity 时,我们可以轻松地在两个屏幕之间绘制图片。在详细信息屏幕中,我们显示下一个连续的列表项,并通过单击相应的列表项显示相应项目的详细信息,然后显示动画。
查看以下 Github 链接:
关于android - Activity 和 fragment 之间的过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47978997/