创建UIView的叠加来捕获所有触摸和手势


0

我有包含与包含含UILabels,UITextFields等众多嵌套UIViews嵌套UIScrollView的顶级UIView的视图层次

我想一个覆盖UIView在一切的顶部,所以我可以截取某些触摸和拖动事件(基本上用于编辑整体布局)。

我想UIScrollView仍然可以工作,所以我需要通过(所有?)触摸和手势通过覆盖到底层的意见。当某些触摸发生时,我将拦截触摸并创建一个拖动的情境,触摸的子视图将在子视图中以编程方式移动。

什么是最好的方式来创建覆盖UIView,以便(所有?)接触和手势可以通过?一些代码示例将非常感谢。

非常感谢。

0

最终我修改我的结构,使覆盖使用平移手势


0

子类覆盖的UIView和覆盖的touchesBegan,倒是..这样的方法:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    // Do your stuff 
    [[[self view] nextResponder] touchesBegan:touches withEvent:event]; 
} 

做touchesMoved,touchesEnded和touchesCancelled相同。

不是100%肯定这会工作,给它一个去:)

  0

这不起作用处理一切。我相信它将触摸传递给'base'或'root'UIView,绕过了坐在基座之上的所有UIViews。这大概是因为覆盖层实际上是基础的直接子视图,而不是坐在其间的所有其他视图。 23 5月. 122012-05-23 13:41:36