【问题标题】:How to give top to bottom animation in Android?如何在Android中给出从上到下的动画?
【发布时间】:2011-12-06 22:20:27
【问题描述】:

当我进入下一个活动时,我能够从下到上动画,但是现在当我按下回时,我使用相同的代码从上到下动画,但它总是从下到上,所以我的问题是 当我在 android 设备上按下返回按钮时如何从上到下给出动画?
请在下面找到我的代码。

我在使用Intent 从一个Activity 转换到另一个时使用它。

overridePendingTransition( R.anim.slide_in_up, R.anim.slide_out_up );

xml 是:slide_in_up.xml

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="100%p" android:toYDelta="0%p"
android:duration="@android:integer/config_longAnimTime"/>

slide_out_up.xml 是

 <?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="0%p" android:toYDelta="-100%p"
android:duration="@android:integer/config_longAnimTime"/>

【问题讨论】:

    标签: android android-animation android-transitions


    【解决方案1】:

    只需在 slide_out_up.xml 中将 -100 更改为 100(去掉减号)

    @Override
    public void onBackPressed() {
        finish();
        overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim);
    }
    

    【讨论】:

    • 嗨 hesam..如果您曾经使用过蓝牙工作,请参考上面的链接。通过蓝牙配对 2 台设备后,如何开始使用授权请求交换配置文件信息的通知。 .并且在接受它之后只交换个人资料信息..我被困在这里 3 天请帮助...谢谢
    • 嗨 shyam,我看到了你的链接,但不幸的是我不知道。让我搜索一下,如果我得到结果然后我会告诉你。对不起:)
    • 好吧 hesam 肯定... ..你帮助我...所以我很感谢你.. :)
    【解决方案2】:

    在我的平板电脑 4.0.3 上工作。

    slide_out_up.xml

    <set xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <translate
            android:duration="@android:integer/config_mediumAnimTime"
            android:fromYDelta="0%p"
            android:toYDelta="-100%p" />
    
    </set>
    

    slide_in_up:xml

    <set xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <translate
            android:duration="@android:integer/config_mediumAnimTime"
            android:fromYDelta="-100%p"
            android:toYDelta="0%p" />
    
    </set>
    

    style.xml

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    
        <style name="DialogAnimationOutUpInUp">
            <item name="android:windowEnterAnimation">@anim/slide_in_up</item>
            <item name="android:windowExitAnimation">@anim/slide_out_up</item>
        </style>
    
    </resources>
    

    【讨论】:

      【解决方案3】:

      我刚刚用另外两个类似的 xml 文件实现了它

      向上滑动,100 到 0 和 0 到 -100

      向下滑动 -100 到 0 和 0 到 100

      效果很好。

      【讨论】:

        【解决方案4】:

        您可以覆盖后退按钮按下行为并设置所需的适当动画,如下所示:

        @Override
        public void onBackPressed() {
            finish();
            overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim);
        }
        

        更改overridePendingTransition 处的动画,使其适合您想要的。

        【讨论】:

        • 我和你说的一样,但它给出相同的动画意味着从下到上但是当我按下返回按钮时我想要从上到下的动画,我反转了 overridePendingTransition(R.anim.slide_out_up, R .anim.slide_in_up);
        • 我和你做的一样,除了我的“slide_out”动画是android:fromYDelta="0%p" android:toYDelta="100%p"。它在这里工作得很好。当您要调用下一个活动时,您是否将额外的Intent.FLAG_ACTIVITY_NO_ANIMATION 添加到您的Intent?有动画发生吗?
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-22
        • 1970-01-01
        • 1970-01-01
        • 2019-04-11
        相关资源
        最近更新 更多