简体   繁体   中英

Determine iPhone Screen Tapped is in region or not?

I want to determine whether the tapped location is in region or not. I have 4 CGPoints and I know this can be done by using UITouch. Also, I have screen tapped location by using the function

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *myTouch = [[touches allObjects] objectAtIndex: 0];
    CGPoint currentPos = [myTouch locationInView:self.view];
}

And for example my 4 CGPoints are

self.firstPoint = CGPointMake(50.0f, 50.0f);
self.secondPoint = CGPointMake(200.0, 50.0);
self.thirdPoint = CGPointMake(200.0, 200.0);
self.fourthPoint = CGPointMake(50.0, 120.0);

Thanks in advance

您应该使用CGRect而不是四个CGPoint来表示rect,然后使用CGRectContainsPoint()检查rect是否包含该点。

-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {


  UITouch *touch = [[event allTouches] anyObject];
     CGPoint location = [touch locationInView:touch.view];
    image=[UIImage imageNamed:@"anyImage.gif"];
    newView = [[UIImageView alloc]initWithImage:image];
    if (location.y<480|| location.y>50)
    {
        //write your code

    }


}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM