How to test if a point is in a view

后端 未结 5 1908
慢半拍i
慢半拍i 2020-12-14 16:46

I have a UIImageView and I have a CGPoint on the screen. I want to be able to test that point to see if it is in the UIImageView. What

5条回答
  •  北荒
    北荒 (楼主)
    2020-12-14 17:30

    I'll assume you have a full-screen window (pretty reasonable, I think). Then you can transform the point from the window's coordinate space to the UIImageView's using:

    CGPoint point = ...
    UIWindow window = ...
    UIImageView imageView = ...
    CGPoint transformedPoint = [window convertPoint:point toView:imageView];
    

    Then, you can test if the point is in the image view's frame as follows:

    if(CGRectContainsPoint(imageView.frame, transformedPoint))
    {
        // do something interesting....
    }
    

提交回复
热议问题