android:theme决定AlertDialog的背景颜色

三世轮回 提交于 2020-01-18 04:23:38

最近遇到一个很奇怪的问题,两个项目弹出的dialog背景颜色不一样,一个是黑色的,一个是白色的,最后发现是AndroidManifest.xml文件里面application指定的android:theme设置的样式不一样。



黑色dialog背景效果图:


dialog是黑色的时候application指定的样式如下:

    <!-- Application theme. -->
    <style name="AppTheme" parent="android:Theme.Light">
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
        <item name="android:windowNoTitle">true</item>
    </style>







白色背景如图:


dialog是白色背景的时候application指定的样式如下:

    <!--
        Base application theme, dependent on API level. This theme is replaced
        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
    -->
    <style name="AppBaseTheme" parent="android:Theme.Light">
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.
        -->
    </style>

    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
        <item name="android:windowNoTitle">true</item>
    </style>








总结:对比两个样式,我们很明显的发现白色背景多继承了一层,增加了AppBaseTheme样式............希望我的总结能让你们少遇到坑。。。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!