我有一个带有多个视图的对话框(演示文稿)(GLSurfaceView,ImageView,...),我希望避免所有视图在主要活动最小化时接收onWindowVisibilityChanged事件,这样我就可以在第二个看到它们了屏幕。我可以为每个视图覆盖onWindowVisibilityChanged(因此视图永远不会看到visibility = GONE)但是我希望通过阻止Dialog中的任何视图使用visibility = GONE调用onWindowVisibilityChanged来更优雅地执行此操作。欢迎其他创意选择。
有可能吗?怎么样?
这是我目前在每个视图中必须执行的代码,因此它们忽略了View.GONE值。理想情况下,我会在中心位置执行此操作,以避免调度调用或使用View.VISIBLE调用子项:
@Override
protected void onWindowVisibilityChanged(int visibility) {
super.onWindowVisibilityChanged(View.VISIBLE);
}