gpt4 book ai didi

ios - 如何使 CALayer 可点击?

转载 作者:行者123 更新时间:2023-11-29 13:24:00 25 4
gpt4 key购买 nike

我正在使用 CATransformLayer 创建一堆图层并使用 3D 透视为它们制作动画以制作立方体(类似这样的东西)

CATransformLayer with sublayers

将 UIButton 添加到此立方体的一侧的最佳方法是什么?我希望能够接收事件并从 IBOutlet 访问按钮。

我已经尝试在我的 XIB 中创建一个带有按钮的 UIView,并将其层插入到 CATransformLayer 中,它显示出来但按钮不可点击。我有一种感觉,这是因为 UIKit 处理事物的触摸/事件方面,层只是在那里进行绘图。

(顺便说一句,我已经看到了 this question,但我觉得这个案例有足够的不同,值得写一篇新文章)

最佳答案

托管所有图层的 Root View 正在获取图层树的所有内容

在那里你必须做

CALayer *touchedLayer = [self.rootLayer hitTest:touches.anyObject.locationInWindow];

来自评论:如果您想在动画期间检查,请询问您的表示层:

CALayer *touchedLayer = [self.rootLayer.presentationLayer hitTest:touches.anyObject.locationInWindow];

关于ios - 如何使 CALayer 可点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13629923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com