2

私はすべてを試しました:

1. UITrackingRunLoopMode で繰り返し NSTimers を使用し、現在の GLKView の drawInRect を手動で強制します。メソッドが呼び出され続けても、何も更新されません。

2.「dispatch_async」でディスパッチ キューを使用すると、OpenGL コンテンツが描画されません。

UIScrollView と OpenGL に関して私が目にするすべての例は、GLKViewController で使用していない CADisplayLink のデフォルトの実行ループを変更することで問題を解決しています。

誰もこの問題に直面しましたか?

どんな洞察も素晴らしいでしょう:)

前もってありがとう、ヌーノ

4

1 に答える 1

2

私が見つけた解決策の 1 つは、View Controller を scrollview デリゲートとして割り当て、必要に応じて draw メソッドを呼び出すことです。

(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    GLKView *view = (GLKView *)self.view;
    [self glkView:view drawInRect:view.frame];
}
于 2012-05-09T03:50:09.757 に答える