在android中,如何在点击按钮时使屏幕变暗?

在android中,如何在点击按钮时使屏幕变暗?,android,button,screen-brightness,Android,Button,Screen Brightness,如何单击按钮使当前屏幕变暗/变暗。请帮帮我 这里有一个解决方案,尽管它可能不是最好的: 在res/values下创建styles.xml。添加以下代码: <style name="Theme.Translucent" parent="android:Theme"> <item name="android:windowIsTranslucent">true</item> <item name="android:windowBackgroun

如何单击按钮使当前屏幕变暗/变暗。请帮帮我

这里有一个解决方案,尽管它可能不是最好的:

在res/values下创建styles.xml。添加以下代码:

<style name="Theme.Translucent" parent="android:Theme">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@color/cache_color</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:backgroundDimEnabled">true</item>
 </style>
瞧,当你的按钮的侦听器被调用时,屏幕变暗了

WindowManager.LayoutParams lparams = getWindow().getAttributes();  
lparams.dimAmount=1.0f; 
dialog.getWindow().setAttributes(lparams);  
调暗量0表示不调暗,调暗量1.0f表示完全调暗。介于两者之间的任何值都是dim的相应百分比


只需将此代码添加到所需的按钮。

教程可能会对您有所帮助。可能重复:另一个可能重复的@SherazKhilji call dialog.setContentView可能会在设置之前重复dimAmount@jjyao我已经解决了这个问题。当我调用它时,我处于后台线程中,但一旦我将这段代码移动到UI线程中,它就工作了。谢天谢地,这是假的调光,不是一个合适的解决方案。
WindowManager.LayoutParams lparams = getWindow().getAttributes();  
lparams.dimAmount=1.0f; 
dialog.getWindow().setAttributes(lparams);