android activity进入退出动画问题

CocoWindy 发布于 2013/12/13 11:40
阅读 3K+
收藏 0

    最近在学习安卓开发,其间遇到一些难题希望大神帮忙解决。

我想实现activity进入退出的动画,所以上网搜索相关的资料。很多人都说在android 2.0版本后加入了overridePendingTransition函数可以实现该效果,该函数在startActivity和finish之后调用就行。但是我试了却是不行的。

所以我就只能在AndroidManifest.xml清单文件中注册android:theme以实现动画,具体代码如下

开发环境:google的android-studio

测试机型:三星i9050,android版本2.3.6

styles.xml文件

<resources>


    <style name="AnimationActivity" parent="@android:style/Animation">
        <item name="android:activityOpenEnterAnimation">@anim/slide_in_right</item>
        <item name="android:activityOpenExitAnimation">@anim/slide_out_left</item>
        <item name="android:activityCloseEnterAnimation">@anim/slide_in_left</item>
        <item name="android:activityCloseExitAnimation">@anim/slide_out_right</item>
    </style>

    <style name="AppBaseTheme" parent="android:Theme.Light.NoTitleBar.Fullscreen">
    </style>

    <style name="AppTheme" parent="AppBaseTheme">
        <item name="android:windowAnimationStyle">@style/AnimationActivity</item>
    </style>

</resources>



AndroidManifest.xml中也进行了注册(其他部分省略)

<application
        android:theme="@style/AppTheme">



具体的动画如文件名字,左侧滑入、左侧滑出、右侧滑入、右侧滑出



然后这些代码运行的结果就是,在MainActivity中startActivity启动一个新的activity,新的activity直接开启没有实现动画效果。按返回键退出这个新的activity,却出现了新的activity从右侧滑出,MainActivity从左侧滑入的效果。


这让我相当困惑,因为退出动画实现了,所以我的代码应该是注册进去了,但是为什么开启动画没有实现?是activity启动机制的问题还需要进行一些其他的设置?我是通过intent启动activity的。还是说一些什么其他的原因,望大神解答


加载中
返回顶部
顶部