所以,我有我的应用程序,当前标记为更改singleTop活动的主题
android:launchMode="singleTop"
的活动......我现在有两个的onCreate和 onNewIntent逻辑确保屏幕始终显示由启动的最新Intent提供的数据。我希望能够根据该Intent提供的数据在Holo.Light和Holo.Dark之间进行更改。
调用setTheme不工作(见这两个环节):
- Why getApplicationContext().setTheme() in a Activity does not work?
- http://code.google.com/p/android/issues/detail?id=4394
这第二个链接都有涉及创建第二的AndroidManifest.xml一种解决方法具有其他主题并指向相关活动的空子类的条目。这是有效的,但它破坏了singleTop(因为现在可以有两个堆栈活动实例)。
我出来的想法。任何人都知道是否有任何方法可以执行此操作,而不必为此活动滚动自己的自定义ActionBar视图?
这样的声音应该可以工作。谢谢! – Eric 2012-03-13 03:33:53
对于其他任何正在尝试此操作的人,我必须将方法的第3行更改为intent.setFlags。有问题的意图设置了Intent.FLAG_ACTIVITY_REORDER_TO_FRONT标志,导致重启失败。 – Eric 2012-03-13 20:21:29