如何改變Android Dialog彈出後的Activity背景亮度
阿新 • • 發佈:2019-01-03
第一次寫部落格,大笑
其實,這也不是原創,只是想把我所遇到的問題記錄下來.
第一種方法 是在樣式檔案styles.xml中新增新的樣式,父樣式指向的是預設的Dialog樣式,修改如下,然後你的Dialog用你新增的樣式就可以了.
<resources>
<style name="DialogStyle" parent="@android:style/Theme.Dialog">
<!-- dialog背景樣式 -->
<item name="android:windowBackground"> @android:color/transparent </item >
<!-- 背景透明 -->
<item name="android:backgroundDimEnabled">false</item> </style>
</resources>
第二種是在程式碼中修改.lp.alpha大小隨自己要求設定
// 設定螢幕背景變暗
private void setScreenBgDarken() {
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.alpha = 0.5f;
lp.dimAmount = 0.5 f;
getWindow().setAttributes(lp);
}
// 設定螢幕背景變亮
private void setScreenBgLight() {
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.alpha = 1.0f;
lp.dimAmount = 1.0f;
getWindow().setAttributes(lp);
}