首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检测NSOpenGLView上的触摸

检测NSOpenGLView上的触摸
EN

Stack Overflow用户
提问于 2010-01-06 04:47:09
回答 1查看 306关注 0票数 2

我已经在我的MainMenu.xib文件中添加了一个NSOpenGLView,并实现了drawRect来绘制它,这工作得很好,到目前为止还不错。

如何检测屏幕上的触摸?我想我也许可以在界面生成器中的NSOpenGLView区域中转储一些透明的按钮或其他东西?

这个应用程序很简单,我只需要知道网格的哪个区域被触摸了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-06 07:00:01

不需要添加透明按钮或覆盖。

我假设这是用于电话的,因为您提到了Cocoa Touch,但我不知道电话的NSOpenGLView。您需要查看苹果示例,并通过覆盖子类中的+layerClass来创建一个EAGLView,如下所示:

代码语言:javascript
复制
+ (Class)layerClass {
    return [CAEAGLLayer class];
}

接下来,确保在IB中选中"User Interaction Enabled“。

最后,实现触摸方法调用:

代码语言:javascript
复制
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event;

这些将告诉你用户在哪里触摸了表面,以及用了多少根手指。你可以从那里做剩下的事情。尝试创建模板OpenGL项目并查看它。此外,Jeff LaMarche在他的博客上有一些很好的iPhone OpenGL教程:http://iphonedevelopment.blogspot.com/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2008987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档