1

onsizechanged()和方法有什么区别surfacechanged()??

onsizechanged()当视图大小改变时surfacechanged()调用,而当表面改变时调用......所以当大小发生变化时两种方法将同时调用??

这实际上是如何发生的以及何时使用这两个...

您还可以提供一些关于视图框架的教程链接,以便除了 Android 开发人员之外更好地理解???

4

1 回答 1

1

首先这两种方法是完全不同的,即使它们在surfaceview的情况下被一起调用。

在对表面进行任何结构更改(格式或大小)后立即调用此方法。此时您应该更新表面中的图像。在surfaceCreated(android.view.SurfaceHolder) 之后,这个方法总是至少被调用一次。

  • onSurfaceChanged是 Surfaceholder 接口的回调方法。许多 View 对象实现了哪些(GLSurfaceView、SurfaceView)。

当此视图的大小发生更改时,这会在布局期间调用。如果您刚刚被添加到视图层次结构中,则会使用旧值 0 调用您。

现在从技术上讲,两者都将同时被调用。但如果您更改表面对象的PixelFormatonSurfaceChanged ,将单独调用。

于 2013-07-07T16:45:54.577 回答