Tôi có mã sau để xác định xem một lần chạm có nằm trong chế độ xem hình ảnh trong ô bảng của tôi hay không. Tuy nhiên, nó không hoạt động. Tôi đã so sánh hai với CGRectContainsPoint tuy nhiên, nó không hoạt động. Đây là mã:So sánh vị trí UITouch với hình chữ nhật UIImageView
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
// Declare the touch and get it's location
UITouch *touch = [touches anyObject];
CGPoint touchLocation = [touch locationInView:self];
if (CGRectContainsPoint(myImageView.frame, touchLocation))
{
NSLog(@"Tapped image view");
}
}
Cảm ơn sự giúp đỡ!
mở rộng: 'CGPoint touchLocation = [touch locationInView: self]; if (CGRectContainsPoint (myImageView.frame, touchLocation)) 'chỉ hoạt động nếu' myImageView' là một subview trực tiếp của 'self' –
mở rộng trên bình luận của Joao, bạn có thể nhận được khung của subview tương ứng với superview (hoặc bất kỳ khung nhìn nào) với' CGRect frameRelativeToView = [myImageView convertRect: myImageView.bounds toView: self] ' – chazzwozzer