-1

以下に示すように2つの長方形があり、両方とも回転でき、両方ともサイズ変更できます。

ここに画像の説明を入力

ここに画像の説明を入力

今私の質問は、黄色が5pxの前にある白い長方形に向かって移動するときはいつでも、緑の長方形の端です。黄色の四角形が白い四角形の線に触れたときに通知する必要があります。

多くの作業を行った後、両方の長方形が回転していないときにできるようになりました。そのビューが回転したときと同じように、通知を受ける必要があります。最初の画像に白い長方形を描きました。回転したものも同じ画像と考えてください。

4

1 に答える 1

-1

これを試してみてください。うまくいくと思います

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{   
    if (!self.clipsToBounds && !self.hidden && self.alpha > 0) {
        for (UIView *subview in self.subviews.reverseObjectEnumerator) {
            CGPoint subPoint = [subview convertPoint:point fromView:self];
            UIView *result = [subview hitTest:subPoint withEvent:event];
            if (result != nil) {
                return result;
                break;
            }
        }
    }

    // use this to pass the 'touch' onward in case no subviews trigger the touch
    return [super hitTest:point withEvent:event];
}
于 2013-10-25T12:21:30.820 に答える