在我的应用中,我允许用户通过添加箭头(自定义ArrowView)来注释照片。可以添加许多箭头,各种缩放和放大。转动。
我正在尝试通过触摸选择箭头。目前,我正在迭代&使用
CGRectContainsPoint(arrowView.frame, touchPoint)
根据触摸手势决定选择哪个箭头。
但是,当一些箭头很大并且它们很大时,这种方法效果不佳。旋转到45度(因为框架变大)。
问题: 我想使用箭头的边界转换为父坐标而不是框架。如何在缩放和放大时获得此功能是否应用了旋转?
或者,有没有更好的方法来解决这个选择问题?
答案 0 :(得分:1)
此代码在touchPoint
:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
CGPoint touchPoint = [touch locationInView:self.view];
UIView *arrow = [self.view hitTest:touchPoint withEvent:event];
}