Android - 当弹出窗口可见时,禁用父视图单击事件

时间:2017-04-07 08:19:37

标签: android

我花了很多时间试图自己解决这个问题,并在这里搜索以找到解决方案,但没有一个对我有用。

我目前的情况是出现弹出窗口时我想要禁用弹出窗口下方前景视图上的所有可点击事件。

{{1}}

1 个答案:

答案 0 :(得分:0)

搭便车Akshay Mukadam Disabling all child views inside the layout。我已稍微调整一下以包含启用我的观点。

public static void disableEnableViews(ViewGroup layout) {
    layout.setEnabled(false);
    for (int i = 0; i < layout.getChildCount(); i++) {
        View child = layout.getChildAt(i);
        if (child instanceof ViewGroup) {
            disableEnableViews((ViewGroup) child);
        } else {
            if(child.isEnabled()){
                child.setEnabled(false);
            } else {
                child.setEnabled(true);
            }
        }
    }
}

只需给你的顶视图一个id,引用它,然后输入方法。