【问题标题】:Easy way to set a simple slide animation on Android activity transitions?在 Android 活动转换上设置简单幻灯片动画的简单方法?
【发布时间】:2020-10-28 11:30:46
【问题描述】:

我是一名初级开发人员,我正在尝试制作一个新应用。

我的应用有一个非常简单的导航结构。它有一个主菜单,您只需在树中深入了解特定类别即可。

我希望通过快速幻灯片来转换我的活动。因此,从主菜单中,详细活动从右侧滑动。然后当用户想要返回时,主菜单会从左边滑动。

环顾四周,我似乎找不到任何好的简单选择。我的最低 API 是 21,所以我尝试使用 Lollipop 动画。

这样写代码:

window.enterTransition = Slide(Gravity.START)
window.exitTransition = Slide(Gravity.END)
startActivity(intent, ActivityOptions.makeSceneTransitionAnimation(this).toBundle())

...创建了这种令人不满意的幻灯片效果。幻灯片更类似于波浪,视图不会一下子快速滑动。

我只是希望能够覆盖默认的活动动画,该动画似乎是自下而上出现的。有没有一些简单的方法可以做到这一点?

【问题讨论】:

    标签: android animation android-activity transition


    【解决方案1】:

    检查一下:

    public static void switchActivityAnimation(Activity activity)
        {
            activity.overridePendingTransition(R.anim.slide_in, R.anim.slide_out);
        }
    

    并且
    slide_in

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android"
        android:shareInterpolator="false" >
        <translate android:duration="1500" android:fromXDelta="100%" android:toXDelta="0%" />
    </set>  
    

    slide_out

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android"
        android:shareInterpolator="false" >
        <translate android:duration="1500" android:fromXDelta="0%" android:toXDelta="-100%"/>
    </set>  
    

    我不确定这是否会产生所需的效果。我用它来淡入淡出动画。

    在startActivity()之后使用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-22
      • 2013-11-16
      • 2014-07-07
      • 1970-01-01
      相关资源
      最近更新 更多