Theme可以用来整合Style制定
Theme设置文件安排于Style.xml预加载的主题样式
Style.xml文件中预设置的主题范例:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 基础应用程序主题,为默认主题 -->
<style name="Theme" parent="android:Theme"></style>
<!-- 更改应用程序的主题,使之具有translucent后台 -->
<style name="Theme.Translucent">
<item name="android:windowBackground">@drawable/translucent_background</item>
<item name="android:windowNoTitle">false</item>
<item name="android:colorForeground">@drawable/blue</item>
<item name="android:colorBackground">@drawable/white</item>
</style>
<!-- 更改应用程序的主题,使之具有不同颜色后台且具有translucent后台 -->
<style name="Theme.Translucent2">
<item name="android:windowBackground">@drawable/pink</item>
<item name="android:windowNoTitle">false</item>
<item name="android:colorForeground">@drawable/darkgreen</item>
<item name="android:colorBackground">@drawable/pink</item>
</style>
<!-- 更改应用程序的主题,使之具有透明transparent后台 -->
<style name="Theme.Transparent">
<item name="android:windowBackground">@drawable/transparent_background</item>
<item name="android:windowNoTitle">false</item>
<item name="android:colorForeground">@drawable/blue</item>
<item name="android:colorBackground">@drawable/pink</item>
</style>
<style name="TextAppearance.Theme.PlainText" parent="android:TextAppearance.Theme">
<item name="android:textStyle">normal</item>
</style>
</resources>
可以在Activity中通过setTheme方法来设置自定义的主题
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(R.style.Theme_Translucent); setContentView(R.layout.activity_theme); }
也可以在AndroidManifest.xml文件中直接定义主题
<activity android:name="com.example.ex_3_21_theme.ThemeActivity" android:label="@string/app_name" android:theme="@style/Theme.Translucent2" >