我很清楚如何使用清单中的主题和windowBackground标签在Android中设置活动的启动画面。
最近一位客户要求“根据每天某些事件更改启动画面”。 我几乎可以肯定这是不可能的,但我还是决定尝试用以下代码:
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
int random = (int) Math.abs(System.currentTimeMillis() % 3);
switch (random) {
case 0:
setTheme(R.style.FullscreenTheme1);
break;
case 1:
setTheme(R.style.FullscreenTheme2);
break;
default:
setTheme(R.style.FullscreenTheme3);
break;
}
}
}
很明显这不起作用。
是否有人已经尝试过实现这个或者有更好的想法?
谢谢。
编辑:
创建一个虚假的活动或片段来显示启动画面将是容易的,但会在应用程序启动时留下不愉快的白色(或黑色,取决于主题)闪烁。
这个问题是关于通过编程方式改变启动画面的可行性,使其与在清单中硬编码得到相同的结果。