1.Theme可以设置全局主题和 单独某个Activity的主题
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"> <!--这个主题是针对App的,如果不对Activity单独设置主题,就默认为AppTheme-->
<activity android:name=".MainActivity"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SonActivity"
android:theme="@style/SonTheme"> <!--这个主题是针对SonActivity的-->
</activity>
</application>
2.在value下的styles里可以 自定义 Theme,支持自定义与重写
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<!--<item name="colorPrimaryDark">@color/colorPrimaryDark</item>-->
<item name="colorPrimaryDark">@color/colorLine</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<!--下面是自定义的Theme-->
<style name="SonTheme" parent="AppTheme">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
</style>
</resources>
3. Theme常用的一些属性说明
<item name="android:windowFrame">@null</item> :Dialog的windowFrame框为无
<item name="android:windowIsFloating">true</item>:是否浮现在activity之上
<item name="android:windowIsTranslucent">false</item>:是否半透明
<item name="android:windowNoTitle">true</item>:是否显示title
<item name="android:windowBackground">@drawable/dia_bg</item>:设置dialog的背景
<item name="android:backgroundDimEnabled">false</item>: 背景是否模糊显示