Activity无论是否设置style主题,默认都是有动画效果的。如果要去掉默认的动画效果,只需要在原有主题的基础上添加一个属性:windowAnimationStyle,并设置为@null即可。具体步骤如下:
1. styles.xml中添加主题:
<style name="noAnimation" parent="android:Theme.Light.NoTitleBar">
<item name="android:windowAnimationStyle">@null</item>
</style>
2. AndroidManifest.xml中设置Activity的主题:
<activity
android:name=".MyActivity"
android:theme="@style/noAnimation" />
实际发现在某些机型上只设置上述主题依然会有动画,这时可以试试在跳转此页面的代码执行之后添加相关代码(overridePendingTransition接口)去掉动画,如:
Intent intent = new Intent(this, MyActivity.class);
startActivity(intent);
overridePendingTransition(0, 0);
在主题中配置了windowAnimationStyle属性,并且代码里调用了overridePendingTransition接口,基本可以保证去掉默认动画。