所以我注意到 Android 会在活动之间产生轻微的褪色,这真的让我很烦恼,我想知道是否有任何方法可以摆脱它,让它在没有动画的情况下“捕捉”到下一个屏幕?
我环顾四周,但找不到任何能真正回答我问题的东西。我假设它将是基于 XML 的,但我看到这个人在这里试图以编程方式进行操作: 我如何消除 LayoutTransition 动画之前的延迟但做他所做的事情(应用“空白”动画)似乎没有改变任何东西。
有什么能指出我正确的方向吗?塔!
所以我注意到 Android 会在活动之间产生轻微的褪色,这真的让我很烦恼,我想知道是否有任何方法可以摆脱它,让它在没有动画的情况下“捕捉”到下一个屏幕?
我环顾四周,但找不到任何能真正回答我问题的东西。我假设它将是基于 XML 的,但我看到这个人在这里试图以编程方式进行操作: 我如何消除 LayoutTransition 动画之前的延迟但做他所做的事情(应用“空白”动画)似乎没有改变任何东西。
有什么能指出我正确的方向吗?塔!
最优雅的控制是使用样式和主题实现的。通过这种方式,您可以逐个Application
和Activity
逐个地控制它。
styles.xml(WhateverTheme
作为您为应用程序隐式或显式选择的 Android 主题):
<resources
xmlns:android="http://schemas.android.com/apk/res/android" >
<style
name="MyWhateverTheme"
parent="@android:style/WhateverTheme">
<item name="android:windowAnimationStyle">@style/MyActivityAnim</item>
</style>
<style
name="MyActivityAnim">
<item name="android:windowEnterAnimation">@null</item>
<item name="android:windowExitAnimation">@null</item>
</style>
</resources>
当然,你也可以@animation
这样指定custom。
在您的 Manifest.xml 中:
<application
android:theme="@style/MyWhateverTheme" >
并将其更改为特定的Activity
:
<activity
android:theme="@style/SomeOtherTheme" >
使用FLAG_ACTIVITY_NO_ANIMATION
Intent i = new Intent(this, nextActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(i);