在superview轮换后获取子视图位置

时间:2012-01-05 00:35:06

标签: ios uiview rotation transform

我有一个UIView,它有几个响应触摸的子视图。如果我使用以下代码旋转超级视图的图层

[CATransaction begin];
[CATransaction setDisableActions:true];
view.layer.transform = CATransform3DRotate(view.layer.transform, angle, 0, 0, 1);
[CATransaction commit];

...当我回应触摸事件时,我似乎找不到子视图的正确位置......有什么想法吗?

1 个答案:

答案 0 :(得分:3)

我发现它,我觉得很漂亮。我需要在UIViews之间转换点进行bezier命中测试:

-(BOOL)containsPoint:(CGPoint)point
{
    point = [self.superview.superview convertPoint:point toView:self];
    return [self.slicePath containsPoint:point];
}