【发布时间】:2014-05-21 03:41:24
【问题描述】:
我有一个带有精灵的 OpenGL 视图,其中的 UIView 在 OpenGL 视图的顶部具有相同的位置和大小,以使它们可以访问。 OpenGL 视图应该能够接收触摸事件和顶部的 UIView。在我的 UIView 类中,我重写了 hitTest:withEvent 方法,以便 UIViews 获得触摸输入,否则只有 OpenGL 获得触摸:
-(UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
NSEnumerator *reverseE = [self.subviews reverseObjectEnumerator];
UIView *iSubView;
while ((iSubView = [reverseE nextObject]))
{
UIView *viewWasHit = [iSubView hitTest:[self convertPoint:point toView:iSubView] withEvent:event];
if (viewWasHit)
{
return viewWasHit;
}
}
return [super hitTest:point withEvent:event];
}
现在我的 UIViews 接收触摸输入,但下面的 OpenGL 元素没有。我怎样才能改变它,让他们都收到触摸。
【问题讨论】:
标签: objective-c uiview opengl-es