Android:你如何判断View已变为可见?

时间:2012-05-06 19:14:06

标签: android android-view

我有一个FrameView,顶部有一个全屏ImageView,底部有一个全屏SurfaceView。当我显示SurfaceView时,ImageView会启动INVISIBLE。现在我将Im​​ageView设置为VISIBLE并想要更新SurfaceView上的内容,看不见。

但ImageView尚未真正可见。在弄乱SurfaceView之前,我必须等到ImageView实际可见。这是怎么做到的?

我发现的唯一方法是在搞乱SurfaceView之前等待50ms(不会少)。这恰好在我的设备上可靠地工作,但显然是一个黑客。

更具体一点:在SurfaceView上,我正在准备一部电影。这使得屏幕变黑。我试图通过用图像覆盖它来避免黑色。

任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

您可以使用View.onVisibilityChanged()。