基になる uiview がイベントを受け取ることができるように、touchesMoved 中にタッチ イベントをキャンセルする必要があります。以下のコメントを参照してください。
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
for (UITouch *touch in touches)
{
if (touch.view == self.touchOverlay) {
CGPoint touchLocation = [touch locationInView:touch.view];
//perform checks on touch location and trip sensor if circumstances are met
if (self.touchSensorTripped) {
self.touchOverlay.userInteractionEnabled = NO;
//NEED TO CANCEL THE TOUCH HERE SO THAT VIEWS UNDERNEATH CAN RECEIVE THE TOUCH EVENTS
}
}
}
}
現在、基礎となるビューはタッチが終了するまでタッチ イベントを受け取りませんが、これでは遅すぎます。オーバーレイ ビューが無効になったら、タッチがまだ移動している間に、すぐに touchesMoved イベントの受信を開始する必要があります。これを行うには、コメントが上にある場所に何を挿入できますか?