热门IT资讯网

android 两个activity实现切换时的滑动效果实现

发表于:2024-11-28 作者:热门IT资讯网编辑
编辑最后更新 2024年11月28日,切换效果主要用到的方法是overridePendingTransition,详解如下:在startintent 或 finish 的时候调用 getActivity().overridePending

切换效果主要用到的方法是overridePendingTransition,详解如下:

在startintent 或 finish 的时候调用 getActivity().overridePendingTransition(arg0,arg1)

arg0是设置第二个activity进入的动画,arg1是设置当前activity的退出的动画。

如果想设置两个activity分别是从右进入,和从左进入的效果如下:

第一个设置为getActivity().overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left);

第二个设置为overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right);

效果设置代码:

1:out_to_left

xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">

<translate android:fromXDelta="0%p" android:toXDelta="-100%p"

android:duration="250" />

set>

2:in_from_right

xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">

<translate android:fromXDelta="100%p" android:toXDelta="0%p"

android:duration="250" />

set>

3:out_to_right

xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">

<translate android:fromXDelta="0%p" android:toXDelta="100%p"

android:duration="250" />

set>

4:in_from_left

xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">

<translate android:fromXDelta="-100%p" android:toXDelta="0%p"

android:duration="250" />

set>


android的x轴位置如下图所示:



默认手机左侧为x轴的零坐标处,每个activity以左侧为当前位置。



0