当我进入下一个活动时,我能够给出自下而上的动画,但现在当我按下时,我使用相同的代码从上到下动画给出动画,但它总是自下而上,所以我的问题是< strong>当我在Android设备上按下按钮时如何从上到下给动画?
请在下面找到我的代码。
我在使用Activity
从Intent
转换到另一个overridePendingTransition( R.anim.slide_in_up, R.anim.slide_out_up );
时使用它。
<?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"/>
和xml是:slide_in_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"/>
和slide_out_up.xml是
{{1}}
答案 0 :(得分:19)
只需在slide_out_up.xml中更改-100到100(删除减号)
@Override
public void onBackPressed() {
finish();
overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim);
}
答案 1 :(得分:5)
我刚用另外两个xml文件实现了它,比如
向上滑动,100到0和0到-100
向下滑动-100到0和0到100
它完美无缺。
答案 2 :(得分:5)
使用我的平板电脑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 :(得分:4)
您可以覆盖后退按钮按下行为并设置所需的相应动画,如下所示:
@Override
public void onBackPressed() {
finish();
overridePendingTransition(R.anim.enter_anim, R.anim.exit_anim);
}
更改overridePendingTransition
的动画,使其适合您想要的动画。