2011-10-04 155 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

這是給黑色的圖像 –

相關問題