2014-01-30 2 views
0

UIViewController 내의 UIView에 GLKView를 추가하고 있습니다. 결국 UIViewController와 GLKViewController를 사용하도록 코드를 나눌 것입니다.하지만 지금은 손이 묶여 UIViewController를 사용해야합니다.스토리 보드 및 프로그래밍 방식으로 GLKView 추가

내 문제는 스토리 보드를 통해 UIVIew에 GLKView를 추가하면 문제가 없다는 것입니다. 프로그래밍 방식으로 GLKView를 추가하려고하면 제대로 초기화되지 않은 것 같습니다. 회색으로 표시됩니다.

IBOutlet을 사용하는 것 외의 다른 구현 방법은 아래의 코드 블록에서 첫 번째 줄과 마지막 줄을 호출하는 것입니다.

glview = [[GLKView alloc] init]; // Non storyboard 
[glview setContext:context]; 
[glview setDelegate:self]; 
[glview setUserInteractionEnabled:YES]; 
[self.view addSubview:glview]; // Non storyboard 

초기화 후 AVCapture 세션을 설정했습니다. 컨트롤러 viewWillAppear 함수 내 GLKView 프레임을 설정합니다. 내 GLKView가 제대로 초기화되지 않는 이유가 있습니까?

답변

0

응용 프로그램에서 드로잉 루틴을 관리하므로 프로그래밍 방식으로 작성된 GLKView에서 "enableSetNeedsDisplay"를 비활성화해야했습니다. 다음 코드는 내 문제를 해결했습니다. 끝에서 두 번째 줄을 메모 해 두십시오.

glview = [[GLKView alloc] init]; 
[glview setContext:context]; 
[glview setDelegate:self]; 
[glview setUserInteractionEnabled:YES]; 
[glview setEnableSetNeedsDisplay:NO]; // HERE IS THE FIX 
[self.view addSubview:glview]; 
관련 문제