Android:如何与另一个 Activity 进行垂直 Activity 转换

标签 android android-activity android-transitions

我的第一个 Activity 中有一个 ListView。当我点击里面的一个项目时,我开始另一个 Activity 。好的。但是现在我想修改这两个 Activity 之间的转换:

  1. Activity1 -> Activity2:Activity2 从底部到顶部的垂直过渡(进度)
  2. 当我回到 Activity1 时:Activity2 从上到下的垂直过渡(进度)

更新

我找到了符合我要求的解决方案:

Activity 1 -> Activity 2

startActivity();
overridePendingTransition(R.anim.from_bottom_to_top, 0);

from_botton_to_top.xml

<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator"
android:fromYDelta="100%p" android:toYDelta="0%p"
android:duration="@android:integer/config_shortAnimTime"/>

Activity2 -> Activity1(后退键)

finish();
overridePendingTransition(0, R.anim.from_top_to_bottom);

from_top_to_bottom.xml

<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromYDelta="0%p" android:toYDelta="100%p"
android:duration="@android:integer/config_shortAnimTime"/>

最佳答案

使用overridePendingTransition改变Activity动画。

对于第一种情况,您可以使用:

Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);                     
overridePendingTransition(R.anim.abc_slide_in_bottom, R.anim.abc_slide_out_top);

对于第二种情况选择其他动画并调用overridePendingTransitiononBackPressedfinish 之后。 overridePendingTransition 应该在您的 Activity 完成后立即调用。

如果您正在寻找动画,请查看 google API 示例。 https://android.googlesource.com/platform/development/+/master/samples/ApiDemos/res/anim/ 有很多简单有用的动画 xml。

但是 abc_slide_in_bottomabc_slide_in_bottom 几年前就在 google appcompat lib 中了。 abc_slide_out_bottomabc_slide_in_top 也是。

关于Android:如何与另一个 Activity 进行垂直 Activity 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165066/

相关文章:

java - AsyncTask - 不在主线程上

android - 没有 google api 的 INSTALL_FAILED_MISSING_SHARED_LIBRARY

android - Toast.makeText Activity 上下文错误?

android - Fragment Transition API with support library (14+) 不做任何转换

java - 显示 Java 文件而不是 XML 文件中的文本 (Android Studio)

java - 当我切换到另一个包含回收器 View 的 Activity 时,应用程序崩溃

android - Froyo 如何在主屏幕上显示对话框?

android - 你应该有一个 com.dropbox.client2.android.AuthActivity 方案 :XXXXXXXX

android - 共享元素到 ImageView 的转换在退出时有效,但在进入时不平滑