我正在创建一款应用程序,其中几乎所有的动画都是淡入淡出。对于一些页面,元素将会在屏幕上动态出现/消失,而所有的淡化效果都非常自然(应用程序的背景为白色)。然而,在我切换活动时,应用程序会淡出到黑色,然后再淡入到下一个活动。由于所有的背景颜色都相同,我想知道是否有办法避免这种情况,使得背景始终保持相同的颜色,只有上面的元素似乎随着应用程序状态的改变而淡出。
我使用以下代码进行转换:
有时候需要使用
我使用以下代码进行转换:
Intent intent = new Intent(this, NextActivity.class);
startActivity(intent);
finish();
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
有时候需要使用
finish()
。我稍微研究了一下,其他人似乎遇到的问题是在NextActivity
的onCreate()
计算密集型操作导致的长时间黑屏。但这对我来说并不是问题。我的onCreate()
方法计算量很小,只是定义了一些监听器而已。所有复杂的逻辑都被转移到了线程中。对我来说,这实际上是一个UI问题,我正在寻找解决方法。
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
之前添加getWindow().setBackgroundDrawableResource(R.drawable.my_drawable);
-- 当然,确保有一个非黑色的可绘制对象供其引用。 - JASON G PETERSON