我使用这段代码使 DialogFragment 的背景变暗:
Window window = getDialog().getWindow();
WindowManager.LayoutParams windowParams = window.getAttributes();
windowParams.dimAmount = 0.75f;
windowParams.flags |= WindowManager.LayoutParams.FLAG_DIM_BEHIND;
window.setAttributes(windowParams);
这在 Kitkat 及以下版本上运行良好,但在 Lollipop 上停止运行。我怀疑这与我的 Activity 使用 Theme.AppCompat.Light.DarkActionBar 样式有关,它在 5.x 上使用 Material Theme,并且该主题中的某些内容阻止了 DIM 标志的工作。 我尝试弄乱各种主题标志,但到目前为止无济于事。
最佳答案
显然这是由我安装的 Lux Dash 应用程序引起的,该应用程序控制屏幕的亮度。哎呀。花了我一段时间才弄明白! 我卸载了它,调光又回来了。 [不是错误]
关于android - 对话框 FLAG_DIM_BEHIND 不适用于 Android 5.x (Lollipop),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30810565/