我已经glsurfaceview
在 xml 文件中创建了,我想glsurfaceView
在按下按钮时更改它的 X、Y。我有onSurfaceChanged()
方法并且有 x,y 变量。我可以将此方法称为chaneglsurfaceview
位置吗?如果可以,我该怎么做,或者如何改变位置?
问问题
1023 次
1 回答
1
我有 onSurfaceChanged() 方法并且有 x,y 变量。我可以将此方法称为chane glsurfaceview 位置吗?
不,你不能,因为onSurfaceChanged (GL10 gl, int width, int height)
作为一个事件。当您的表面尺寸已经改变时,它由 OpenGL ES 子系统调用。因此,当您的表面大小已经改变时,它用于覆盖和执行某些典型操作(如这里详述)。
由于GLSurfaceView
是SurfaceView
后代并且是层次结构的一部分View
,您可以使用通常的定位方法(例如setX())来设置其位置(但不要忘记您应该在 Android 应用程序中确保的屏幕和密度独立性)。
作为旁注:我不知道您的应用程序架构和详细信息,但是当需要重新定位 aGLSurfaceView
时,通常对于同一问题有一个等效的解决方案/解决方法,不需要重新定位。
于 2012-07-05T19:11:18.920 回答