2012-08-13 72 views
0

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

可以有两种可能性,如果该活动只是打开瞬间... 1)要么是动画是从您运行/测试您的应用程序或设备或模拟器上设置禁用2)是该动画的时间也是小/更少意味着500毫秒所以可能这就是为什么衰落效应看起来像开放效应 但我认为第一点是你的主要问题。

是的,这也是点亚历克斯在他的答复中提到的是

overridePendingTransition()方法应该叫从同一个活动中startActivity()后,大多邻近给startActivity()方法,而不是从目标活动。

+0

尝试在我的智能手机上,现在会尝试仿真器,会看到。 – 2012-08-13 13:35:49

+0

你是对的。它适用于模拟器:) – 2012-08-13 13:36:43

+0

在智能手机检查设置,以启用动画,以便在智能手机过渡工作,它会像设置 - >显示 - >动画。所以考虑这种情况也适用于使用转换,如果一个人已禁用动画,那么应用程序将如何。也考虑通过投票我的答案appriciate .. :) – 2012-08-13 13:44:26