2011-10-04 156 views
2

我有一个用户界面,它具有显示多边形的GLSurfaceView。如何强制在GLSurfaceView上调用onDrawFrame()?

UI还有两个按钮ZoomIn和ZoomOut。当用户按下这些按钮时,调用myGLSurfaceView的zoomIn()和zoomOut()方法。

问题是,我想要的方法onDrawFrame得到的调用得到反映放大&出。

为什么我要这个?因为按钮有setClickable(true);为什么?因为我需要的是,如果用户离开手指按下按钮,缩放获得的连续应用直到用户释放按钮。

现在,它的工作原理,但它的作品不好,我需要刷新GLsurfaceview迫使onDrawFrame

回答

-9

使用线程和手指

+0

它是如何解决的?这就是可接受的答案。 – Huperniketes

+0

这不是一个答案,这只是一个解决方案的草图,没有任何强大的基础,也使用了一个不错的练习,有更好的选择...... – desgraci

+0

没有必要告诉你是否解决了这个问题,除非你不要去分享适当的细节。 –

6

呼叫gLSurfaceView.requestRender()新闻/释放事件解决。这将从(链接):

请求呈现器呈现一个框架。当渲染模式设置为RENDERMODE_WHEN_DIRTY时,通常使用此方法,以便仅在需要时渲染帧。可以从任何线程调用。在设置渲染器之前不得调用。

+0

这是给黑色的图像 –

相关问题