大家都知道,Activity可通過(guò)設(shè)置theme來(lái)實(shí)現(xiàn)dialog的效果,相信下面這段代碼很多童鞋也都熟悉,但最近發(fā)現(xiàn)這段代碼在我Android 7.1上面運(yùn)行時(shí),卻有點(diǎn)Ugly!
<style name="DialogStyleBottom" parent="android:Theme.Dialog">
<!--動(dòng)畫(huà)-->
<item name="android:windowAnimationStyle">@style/dialogAnim</item>
<!-- 邊框 -->
<item name="android:windowFrame">@null</item>
<!-- 是否浮現(xiàn)在activity之上 -->
<item name="android:windowIsFloating">false</item>
<!-- 半透明 -->
<item name="android:windowIsTranslucent">true</item>
<!-- 是否有標(biāo)題 -->
<item name="android:windowNoTitle">true</item>
<!-- 設(shè)置背景透明 -->
<item name="android:windowBackground">@android:color/transparent</item>
<!-- 開(kāi)啟背景模糊效果 -->
<item name="android:backgroundDimEnabled">true</item>
</style>
使用如上主題實(shí)現(xiàn)Dialog化的Activity在Android 7.1運(yùn)行效果:

無(wú)法忍受的黑帶!
解決辦法:
使用@style/Theme.AppCompat.Dialog替換上面的父樣式android:Theme.Dialog即可,如下:
<style name="DialogStyleBottom" parent="@style/Theme.AppCompat.Dialog">
再次運(yùn)行效果:

黑帶木有啦!