我有一个FrameView,顶部有一个全屏ImageView,底部有一个全屏SurfaceView。当我显示SurfaceView时,ImageView会启动INVISIBLE。现在我将ImageView设置为VISIBLE并想要更新SurfaceView上的内容,看不见。
但ImageView尚未真正可见。在弄乱SurfaceView之前,我必须等到ImageView实际可见。这是怎么做到的?
我发现的唯一方法是在搞乱SurfaceView之前等待50ms(不会少)。这恰好在我的设备上可靠地工作,但显然是一个黑客。
更具体一点:在SurfaceView上,我正在准备一部电影。这使得屏幕变黑。我试图通过用图像覆盖它来避免黑色。
任何帮助表示赞赏!
答案 0 :(得分:1)
您可以使用View.onVisibilityChanged()。