iphone - 是否有用于 CALayer HitTest 的 MouseChildren?

标签 iphone ios ipad calayer hittest

嘿。 我有一个主层,其中包含 4 个圆圈层,每个圆圈内有一个文本层:

主层 -> (4)圆形层 -> (1)文本层。

我正在主层上执行 HitTest ,我想接收被单击的圆圈。 它工作正常,但是当我点击文本区域时,我返回文本层而不是圆形层。

在 AS3 中,你有

 MouseChildren = true/false.

如何在 Objective C 中获得此功能?

谢谢

沙尼

最佳答案

只需使用superlayer 属性,如下所示:

if([theLayer isKindOfClass:[CATextLayer class]])
    theLayer = theLayer.superlayer;

换句话说,如果你已经有了圆形图层,theLayer就不会改变;如果它是文本子图层之一,theLayer 将更改为指向包含该子图层的图层。

关于iphone - 是否有用于 CALayer HitTest 的 MouseChildren?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5325683/

相关文章:

iphone - iOS 7 图标文件名

ios - 如何将 ipa 文件临时部署到我的 iPhone

iOS 7 - 为什么 ABPersonViewController 不显示我个人的所有信息?

ios - 只要互联网连接可用,就向服务器发送数据 iOS

iphone - MBProgressHUD 没有停止

iphone - 如何使用设备相机在 iphone 应用程序中以编程方式拍摄图片?

ios - 设备旋转时 UITableViewHeader 不保持位置

javascript - 30 分钟后 iPad AJAX 调用错误

iphone - ios 有计时器吗

iphone - 如何在加载 URL 后将本地样式/JS 应用到 UIWebview