在Android中,如何可以覆盖对话框中所有视图的onWindowVisibilityChanged,而不必覆盖每个视图?

在Android中,如何可以覆盖对话框中所有视图的onWindowVisibilityChanged,而不必覆盖每个视图?,android,android-layout,android-activity,Android,Android Layout,Android Activity,我有一个包含多个视图(GLSURFACHEVIEW、ImageView等)的对话框(演示文稿),我希望在主活动最小化时避免所有视图接收onWindowVisibilityChanged事件,以便在第二个屏幕中保持它们可见。我可以为每个视图覆盖onWindowVisibilityChanged(因此视图永远看不到visibility=GONE),但我更喜欢一种更优雅的方式,通过防止对话框中的任何视图在visibility=GONE时调用onWindowVisibilityChanged。欢迎其他创

我有一个包含多个视图(GLSURFACHEVIEW、ImageView等)的对话框(演示文稿),我希望在主活动最小化时避免所有视图接收onWindowVisibilityChanged事件,以便在第二个屏幕中保持它们可见。我可以为每个视图覆盖onWindowVisibilityChanged(因此视图永远看不到visibility=GONE),但我更喜欢一种更优雅的方式,通过防止对话框中的任何视图在visibility=GONE时调用onWindowVisibilityChanged。欢迎其他创造性的选择

可能吗?怎么做

这是我目前在每个视图中必须执行的代码,因此它们忽略view.GONE值。理想情况下,我会在一个中心位置这样做,以避免调度呼叫或呼叫查看的孩子。可见:

@Override
protected void onWindowVisibilityChanged(int visibility) {
    super.onWindowVisibilityChanged(View.VISIBLE);
}

欢迎来到Stackoverflow。分享您已经尝试过的代码片段。谢谢,代码很简单,我正试图通过利用层次结构来避免令人讨厌的重复。简单使用继承,当您设置对话框对象的可见性时,您将在超类中收到onWindowVisibilityChanged回调