【问题标题】:Android, opengl, move glsurfaceviewAndroid、opengl、移动glsurfaceview
【发布时间】:2012-07-04 11:10:12
【问题描述】:

我在 xml 文件中创建了glsurfaceview,我想在按下按钮时更改此glsurfaceView 的 X、Y。 我有 onSurfaceChanged() 方法并且有 x,y 变量。 我可以将此方法称为 chane glsurfaceview 位置吗? 如果可以,我该怎么做,或者如何改变位置?

【问题讨论】:

  • 也许放一些你试过的代码,可能会有所帮助。

标签: android opengl-es glsurfaceview


【解决方案1】:

我有 onSurfaceChanged() 方法并且有 x,y 变量。我可以吗 调用这个方法来获取 glsurfaceview 位置?

不,你不能,因为onSurfaceChanged (GL10 gl, int width, int height) 是一个事件。当您的表面尺寸已经改变时,它由 OpenGL ES 子系统调用。因此,当您的表面大小已经改变时,它用于覆盖和执行某些典型操作 (as detailed here)。

由于GLSurfaceViewSurfaceView 的后代并且是View 层次结构的一部分,您可以使用通常的定位方法(例如setX())来设置它的位置(但是不要忘记 关于您应在 Android 应用程序中确保的屏幕和密度独立性)。

附带说明:我不知道您的应用程序架构和详细信息,但是当需要重新定位 GLSurfaceView 时,通常会有相同问题的等效解决方案/解决方法' t 需要重新定位。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多