您的位置:首页 > 其它

自定义程序的主题的方法:

2011-07-26 16:25 393 查看
(1) 程序的Theme可以自己定义,也可以使用Android给我们定义好的很多可用主题,如Theme.Light,自定义主题写在value/ styles.xml文件中,格式见附录(1)
(2) 如何使用主题了
我们有两种方式可以使用
1) 写在AndroidManifest中,你可以应用在每个Activity中,那么只是在相应的界面发生变化,也可以直接写在Application,那么整个系统的Activity都会变化
写法: android:theme="@android:style/Theme.Dialog"
2) 也可以直接写在程序中,写法: setTheme(R.style.theme);

附录1,自定义主题的格式
<style name="Settings">
//背景图片
<itemname="android:windowBackground">@drawable/background</item>
<itemname="android:focusable">false</item>
//字体颜色
<itemname="android:textColor">#ff000000</item>
//拖动cache,
<itemname="android:cacheColorHint">#00000000</item>
//是否有title
<itemname="android:windowNoTitle">false</item>
</style>

<style name="Settings" parent="android:Theme.Light">
<item name="android:windowFullscreen">true</item>
<item name="android:windowTitleSize">60dip</item>
<item name="android:windowTitleStyle">@style/WindowTitle</item>
</style>

<style name="WindowTitle" parent="android:WindowTitle">
<item name="android:singleLine">true</item>
<item name="android:shadowColor">#BB000000</item>
<item name="android:shadowRadius">2.75</item>
</style>
QA:
Manifest android:theme="@android:style/Theme.Light"但是有部分页面还是不能显示成白色
A:
在PreferenceGroup界面背景颜色不刷新,应用如下代码进行设置即可
mSourcePreferences = (PreferenceGroup)getPreferenceScreen().findPreference(
SEARCH_CORPORA_PREF);
mSourcePreferences.setOnPreferenceClickListener(newOnPreferenceClickListener() {
publicboolean onPreferenceClick(Preference preference) {
PreferenceScreenps = (PreferenceScreen)preference;
ps.getDialog().getWindow().setBackgroundDrawableResource(android.R.drawable.screen_background_light);
returnfalse;
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: