1

我有一个密码对话,为了防止“偷看”,我想将屏幕隐藏在窗口后面。

我能想到的最好的方法是使用以下代码来模糊屏幕内容:

    Window window = dialog.getWindow();
    LayoutParams layoutParams = window.getAttributes();
    layoutParams.dimAmount = 1.0f;
    layoutParams.flags = layoutParams.flags | WindowManager.LayoutParams.FLAG_BLUR_BEHIND;
    window.setAttributes(layoutParams);

不幸的是,虽然这在大多数设备上都可以正常工作,但在某些摩托罗拉设备上,这会导致屏幕严重减慢,导致密码输入字段无法使用。(是的,我证实这是原因,因为删除模糊代码可以解决减速问题。)

无论如何,我想找到一种方法使对话框后面的屏幕为空白(或任何纯色)。我一直无法找到解决方案。

4

1 回答 1

0

为什么不为您的密码输入创建一个新的全屏活动?然后你可以让它看起来像你想要的。它真的必须是一个对话吗?如果是这样,则启动全屏“纯色”活动,然后显示对话框。

于 2012-02-04T07:14:15.557 回答