如何在弹出窗口 window 和 activity android 上委托触摸事件

How to delegate touch events on both popup window and activity android

我有一个 activity,它有两个按钮和一个弹出窗口 window.By 单击按钮弹出窗口将显示。我想处理弹出窗口 window 和 activity 中的触摸事件。 在下图中,我想在不关闭弹出窗口的情况下处理确定按钮单击。同时我也需要关闭按钮事件。

我试过了

popWindow.setTouchable(真);然后 activity 事件不起作用。

popWindow.setTouchable(假);然后弹出 window 事件不起作用。

请看图片参考。

提前致谢。

您可以使用 WindowManager 来实现。

private void popUp(View yourPopUpView,WindowManager.LayoutParams params){
    WindowManager manager = (WindowManager)getSystemService(WINDOW_SERVICE);
    manager.addView(yourPopUpView,params);
}

使用

删除相同的视图
private void removePopUp(View yourPopUpView){
    WindowManager manager = (WindowManager)getSystemService(WINDOW_SERVICE);
    manager.removeView(yourPopUpView);
}

但不要忘记删除 activity 的 onResume 视图。因为它会在你的 activity 销毁后保留下来......

希望这对您有所帮助...