我有一个 FrameView,顶部包含一个全屏 ImageView,下面包含一个全屏 SurfaceView。当我显示 SurfaceView 时,ImageView 开始不可见。现在我将 ImageView 设置为 VISIBLE,并想要更新 SurfaceView 上看不见的内容。
但是 ImageView 还没有真正可见。我必须等到 ImageView 真正可见才可以搞乱 SurfaceView。这是如何完成的?
我发现的唯一方法是在处理 SurfaceView 之前等待 50 毫秒(再少也行)。这恰好在我的设备上可靠地工作,但显然是一个黑客行为。
更具体地说:在 SurfaceView 上我正在准备一部电影。这使得屏幕变黑。我试图通过用图像覆盖它来避免黑色。
感谢任何帮助!
最佳答案
您可以使用View.onVisibilityChanged()。
关于Android:如何判断 View 已变为可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10473412/