如何从下到上设置第二个 Activity 的动画?
How to animate second Activity from bottom to top?
我在第一个 activity 上有一个点击按钮,当我们点击该按钮时,我想为第二个 activity 设置动画,但在我的情况下,我的第一个 activity 也为第二个设置动画
这是代码
Intent createCompaignActivityIntent = new Intent(mActivity, CreateCompaignActivity.class);
mActivity.startActivity(createCompaignActivityIntent);
mActivity.overridePendingTransition( R.anim.slide_in_up, R.anim.slide_out_up );
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"/>
如果您不想为第一个 Activity 设置动画,请将 slide_out_up.xml
中的 android:toYDelta="-100%p"
更改为 android:toYDelta="0%p"
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="0%p" android:toYDelta="0%p"
android:duration="@android:integer/config_longAnimTime"/>
编辑:
要实现第二个退出时向下滑动activity,创建一个动画文件并复制下面的代码
slide_out_down.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"/>
并在第二个 activity 的 onBackPressed()
中添加以下代码。
@Override
public void onBackPressed() {
super.onBackPressed();
overridePendingTransition(R.anim.slide_out_up, R.anim.slide_out_down);
}
我在第一个 activity 上有一个点击按钮,当我们点击该按钮时,我想为第二个 activity 设置动画,但在我的情况下,我的第一个 activity 也为第二个设置动画 这是代码
Intent createCompaignActivityIntent = new Intent(mActivity, CreateCompaignActivity.class);
mActivity.startActivity(createCompaignActivityIntent);
mActivity.overridePendingTransition( R.anim.slide_in_up, R.anim.slide_out_up );
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"/>
如果您不想为第一个 Activity 设置动画,请将 slide_out_up.xml
中的android:toYDelta="-100%p"
更改为 android:toYDelta="0%p"
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="0%p" android:toYDelta="0%p"
android:duration="@android:integer/config_longAnimTime"/>
编辑:
要实现第二个退出时向下滑动activity,创建一个动画文件并复制下面的代码
slide_out_down.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"/>
并在第二个 activity 的 onBackPressed()
中添加以下代码。
@Override
public void onBackPressed() {
super.onBackPressed();
overridePendingTransition(R.anim.slide_out_up, R.anim.slide_out_down);
}