如何在Activity更改时为一个Activity设置动画?

时间:2013-02-14 09:33:14

标签: android android-activity translate-animation

Ativity A更改为Activity B而反之,我希望 Activity B能够制作动画,但在我的情况下Activity A也会动画效果。 (在屏幕左侧留下一个空格)Activity B动画效果很好,我的问题是Activity A的动画。(不应该存在)。我已经设置了

//Activity B
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    overridePendingTransition(R.anim.fadein, R.anim.fadeout);
    setContentView(R.layout.mylayout); 
      //..........
  }

仅限于Activity B。我希望Activity A永远不会从屏幕上动画或消失。

以这种方式修正了反向动画(从Activity B更改为Activity A):

//Activity B
@Override
public void onPause(){
    super.onPause();
    overridePendingTransition(0, R.anim.fadeout);
}

这很好用,所以,现在问题只是从Activity A更改为Activity B,我希望Activity A的行为相同(只是停留,没有动画)。 但如果我在overridePendingTransition(R.anim.fadein, 0);中尝试onCreate(),则Activity A会从屏幕上消失。

fadein.xml

<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
    <translate android:fromXDelta="100%p" android:toXDelta="0%p" android:duration="1000"/>

fadeout.xml

<set xmlns:android="http://schemas.android.com/apk/res/android"
     android:interpolator="@android:anim/accelerate_interpolator">
        <translate android:fromXDelta="0%p" android:toXDelta="100%p" android:duration="1000"/>
</set>

第一张图片是我现在得到的,第二张图片是我想要的。

enter image description here

1 个答案:

答案 0 :(得分:9)

试试这个。

<强> staystill.xml

<?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"
 />