Fadein.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="500" />
Fadeout.xml
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="500" />
当按下按钮时,主要活动类将开始新的活动:
Intent myIntent = new Intent(this, OtherActivity.class); this.startActivity(myIntent);
在OtherActivity类中:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
setContentView(R.layout.view);
}
它不起作用-活动不会滑动,只是立即打开。怎么了?
最佳答案
如果活动只是立即打开,则有两种可能性... 1)是在您运行/测试您的应用程序的设备或仿真器上禁用了动画设置,还是2)动画时间也很小/ less意味着500毫秒,所以这就是为什么衰落效果似乎只是打开效果的原因
但我认为第一点是您的主要问题。
是的,这也是Alex Mention在回答中提到的重点
应该在大多数与startActivity()方法相邻的同一活动中,而不是从目标活动中,在startActivity()之后调用overridePendingTransition()方法。
关于java - 过渡无效,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11935117/