我编写了一个xml,可以很好地在点击时将活动从右向左移动。但现在我想要的是在代码中转换该xml,以便在点击时将活动从底部移动到顶部。
这是我从右到左的xml
right1.xml
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fillAfter="true">
<translate
android:fromXDelta="-100%p"
android:toXDelta="0%p"
android:duration="200" />
</set>
这是另一个xml right2.xml
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fillAfter="true">
<translate
android:fromXDelta="0%p"
android:toXDelta="100%p"
android:duration="200" />
</set>
在这里,我使用此代码在活动之间切换
Intent intent = new Intent(Activity1.this, Activity2.class);
startActivity(intent);
Activity1.this.overridePendingTransition(R.anim.right1, R.anim.right2);
现在我希望它改为最低端移动,即从下到上移动活动。任何帮助将受到高度赞赏。提前谢谢。
答案 0 :(得分:0)
如果您正在寻找Top-Bottom和Bottom-Up动画,请选中此项:
如果您想要左右和左右动画,可以更改fromDelta和toDelta的值。
希望这有帮助。
答案 1 :(得分:0)
push_up_in.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"/>
push_up_out.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"/>
更改活动:
Intent nextActivity = new Intent(getApplicationContext(),
nextactivity.class);
startActivity(nextActivity);
overridePendingTransition( R.anim.slide_up_in, R.anim.slide_up_out );
答案 2 :(得分:0)
对于从下到上的动画,请使用:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="800"
android:fromYDelta="100%p"
android:toYDelta="0%p" />
您可以在mili秒内指定要实现的持续时间。