overridePendingTransition不适用于Android设备

时间:2013-01-14 05:54:53

标签: android transition

默认情况下,新活动从右侧进入,然后从右侧退出。我希望它进入和退出表格底部,但我尽我所能,我只能让它来自底部,从右边退出,这是我的代码。我需要一些帮助,谢谢。

private void show() {
        Intent intent = new Intent();
        intent.setClass(this, PromotionActivity.class);
        startActivity(intent);
        overridePendingTransition(R.anim.slide_bottom_enter,R.anim.slide_bottom_exit); 
    }

slide_bottom_exit.xml:

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/linear_interpolator"
    android:fromYDelta="0%p"
    android:toYDelta="200%p" 
    android:duration="@android:integer/config_mediumAnimTime">
</translate>

R.anim.slide_bottom_enter.xml:

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/linear_interpolator"
    android:fromYDelta="200%p"
    android:toYDelta="0%p" 
    android:duration="@android:integer/config_mediumAnimTime">
</translate>

1 个答案:

答案 0 :(得分:2)

尝试使用此代码进行转换,然后告诉我:

  • 如果您想从底部显示您的活动

    overridePendingTransition(R.anim.top_to_bottom_in,R.anim.top_to_bottom_out);
    
  • top_to_bottom_in

        <?xml version="1.0" encoding="utf-8"?>
        <translate xmlns:android="http://schemas.android.com/apk/res/android"
        android:duration="1000"
        android:fromYDelta="-100%p"
        android:toYDelta="0%p" />
    
  • top_to_bottom_out

        <?xml version="1.0" encoding="utf-8"?>
        <translate xmlns:android="http://schemas.android.com/apk/res/android"
        android:duration="1000"
        android:fromYDelta="0%p"
        android:toYDelta="100%p" />
    
  • 当你想退出活动时

    overridePendingTransition(R.anim.bottom_to_top_in, R.anim.bottom_to_top_out);
    
    -bottom_to_top_in
    
    <?xml version="1.0" encoding="utf-8"?>
    <translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromYDelta="100%p"
    android:toYDelta="0%p" />
    
  • bottom_to_top_out

    <?xml version="1.0" encoding="utf-8"?>
    <translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromYDelta="0%p"
    android:toYDelta="-100%p" />