【发布时间】:2013-02-18 15:49:13
【问题描述】:
我有一个由根层和 2 个 CALayer 子类组成的结构。这 2 层也包含一层。
这里有一个方案:
ROOT LAYER
|
|------- LAYER A
| |---------BG
|
|
|--------LAYER B
|---------BG
如果我在ROOT LAYER 上调用hitTest 方法,它会将最内层返回到层次结构中。因此,如果用户点击LAYER A,我会得到LAYER A 的BG。
//In this example hitResult will contains the BG of LAYER A or the BG of LAYER B
CALayer *hitResult = [rootLayer hitTest:point)];
如何停止响应者链并从发送到ROOT LAYER 的 HitTest 中直接获取 LAYER A 或 LAYER B?
【问题讨论】:
-
如果图层是您自己的子类,那么您可以覆盖
hitTest:并做您自己的事情。 -
@DavidRönnqvist 我无法理解。如何停止子类的传播?
-
从背景层返回
NO -
您能填写一个答案以便我接受吗?
标签: objective-c core-animation calayer hittest