将GLKView与UIBUtton结合使用

时间:2011-11-28 01:39:08

标签: iphone ios glkit

我正在寻找一个示例应用程序,该应用程序在同一窗口中使用Apple的新GLKView对象以及其他UIObject,如UIButton。我是从互联网上搜索的,更像我发现的帖子是that而没有回答:

在我正在创建的应用程序中,我需要在同一视图中使用带有2个UIButton的GLKView。根据我按下的按钮,我更改了GLKView的参数。 ViewController应该如何处理GLKView?我应该将GLKViewController与实际视图控制器分开来仅控制GLKView吗?

我试图让我的视图控制器继承GLKViewController。

@interface ViewController : GLKViewController <GLKViewControllerDelegate, GLKViewDelegate>

在viewDidLoadFunction中设置名为OpenGLView的GLKView:

- (void)viewDidLoad
{
[super viewDidLoad];

EAGLContext *aContext = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];

openGlView.delegate = self;
openGlView.context = aContext;

openGlView.drawableColorFormat = GLKViewDrawableColorFormatRGBA8888;
openGlView.drawableDepthFormat = GLKViewDrawableDepthFormat16;
openGlView.drawableMultisample = GLKViewDrawableMultisample4X;

self.delegate = self;
self.preferredFramesPerSecond = 30;

glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
}

构建进展顺利,但是当我运行应用程序时,崩溃说:

  

'NSInternalInconsistencyException',原因:' - [GLKViewController loadView]加载了“2-view-5”笔尖,但没有得到GLKView。'

有人能帮助我吗?我正在寻找一个例子,但我找不到它

Jordi P

2 个答案:

答案 0 :(得分:2)

您获取的错误消息意味着GLKViewController子类(您的viewController)无法找到GLKView的预期出口。在IB中,viewController的view属性必须连接到GLKView(或子类)才能正常工作。

答案 1 :(得分:0)

转到Storyboard,选择GLKViewController中的视图,并将其设置为GLKView类。