android主题的奇怪问题

时间:2011-06-06 07:56:45

标签: android

与android开发相比,我是一个新手,我只是通过示例项目来获取它。我只是试图从Wikitionary(Android SDK附带的一个示例应用程序)复制样式。

<style name="LookupTheme" parent="@android:style/Theme.Light">
   <item name="android:windowBackground">@drawable/lookup_bg</item>
 </style>

并将其指定为清单文件中的默认主题。这产生了一种效果,如下所示。enter image description here

这正是我想要的..现在我添加了一个首选项页面,允许用户从要应用的主题列表中进行选择。因此,我从清单文件中删除了主题属性(使用默认主题),我尝试以编程方式应用主题。喜欢这个

SharedPreferences sPref = PreferenceManager.getDefaultSharedPreferences(act.getApplicationContext());
    String themeid = sPref.getString("theme_pref", "1");
    int themeID = Integer.valueOf(themeid);
    if(themeID== 2){
        Log.d(Constants.LOG_TAG, "Light theme have been choosen");
        act.setTheme(R.style.LookupTheme);
    }

现在以编程方式应用相同的主题(与声明方法相反)并产生这样的效果。 enter image description here

有人可以解释这里有什么问题吗?

1 个答案:

答案 0 :(得分:0)

你应该看看这个:

Applying a Theme to your Application