004、主题Theme的实现

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"
             >
 
原文地址:https://www.cnblogs.com/zyh-blog/p/3324480.html