解决安卓windowAnimationStyle 设置退出动画无效或者被干扰的问题

在安卓开发中,我们常常需要将Activity窗口化显示,通常我们会在AndroidMainifeset.xml中为该Activity设置Theme属性来实现(如图一)

解决安卓windowAnimationStyle 设置退出动画无效或者被干扰的问题_第1张图片
图一:在activity设置theme 样式

可是我们常常会遇到一个问题,就是在图中给Theme设置的Style(DialogStyleBottom)中,常常会设置一个windowAnimationStyle属性(如图二)来为窗口指定一个动画样式,此处设置的动画样式是dialogAnim,然后我们会发现有些手机上这些动画会正常执行,但是有些手机上,设置的windowExitAnimation动画总是不执行或者执行效果被干扰(即执行了设置的动画的同时还执行了其它非意料之内的动画操作)。该怎么办?

解决安卓windowAnimationStyle 设置退出动画无效或者被干扰的问题_第2张图片
图二:res/style/下的 DialogStyleBottom

笔者发现,在退出动画被干扰执行的时候,只需要重写该Activity的Finish()方法,在该方法中加上overridePendingTransition(0,0);即可去掉干扰的动画操作(如图三)。

解决安卓windowAnimationStyle 设置退出动画无效或者被干扰的问题_第3张图片
图三:重写该Activity的Finish()方法,去掉activity自带的默认过渡动画

OK,希望被这个问题困扰的童鞋看到后,能对你们有所帮助。^_~。

你可能感兴趣的:(解决安卓windowAnimationStyle 设置退出动画无效或者被干扰的问题)