我刚刚看了推特应用程序,从一个屏幕移动到下一个屏幕时,它似乎有一个很好的滑动过渡。我试图在我的应用程序中获得相同的行为。
目前我在屏幕之间移动:
startActivityForResult(new Intent(getApplicationContext(), MyActivity.class), 1);
但是这样画面之间就没有过渡了。刚刚出现MyActivity
在屏幕上。
我刚刚看了推特应用程序,从一个屏幕移动到下一个屏幕时,它似乎有一个很好的滑动过渡。我试图在我的应用程序中获得相同的行为。
目前我在屏幕之间移动:
startActivityForResult(new Intent(getApplicationContext(), MyActivity.class), 1);
但是这样画面之间就没有过渡了。刚刚出现MyActivity
在屏幕上。
带有drawable的动画:
本教程可能会帮助您了解它的工作原理。首先,您应该创建一个以文件夹命名anim
的/res/
文件夹。然后,创建并放入drawables
其中将用于制作过渡动画的内容,如下所示:
anim_left_to_right.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="-100%"
android:toXDelta="0%"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
anim_right_to_left.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="@android:integer/config_mediumAnimTime" />
</set>
然后,使用overridePendingTransition()
方法调用可绘制对象并将它们应用到startActivity()(或startActivityForResult())方法:
startActivityForResult(new Intent(getApplicationContext(), MyActivity.class), 1);
overridePendingTransition(anim_left_to_right, anim_right_to_left);
与生命周期相关的自定义动画:
您还可以制作自定义动画,“不管 startActivity 方法”,但在使用活动的生命周期时:我的意思是Vine
当您调用输入动画进入onCreate()
和输出动画进入时onPause()
。这是关于这种功能的一个很好的演示。
调用overridePendingTransition(entry_anim, exit_anim)
startActivity() 后调用。
可以通过xml指定进出动画。