使用此代码,我试图检测用户用他的手指移动的UI按钮何时通过另一个UIButton(或UIImageView)释放:
CGPoint dropPoint = [gesture locationInView:gesture.view.superview];
if (CGRectContainsPoint(btn.frame, dropPoint)) {
....
btn是被拖动的UIButton,而dropPoint是视图中用户拿走手指的位置。如果在self.view中使用bnt,则此方法可以正常工作,但如果btn在UIScrollView中则不起作用。如何在UIScrollView中使其工作?
答案 0 :(得分:1)
dropPoint
需要位于btn
的坐标系中。假设btn
是gesture.view.superview
的直接子视图:
CGPoint dropPoint = [gesture locationInView:gesture.view.superview];
CGPoint dropPointInBtn = [gesture.view.superview convertPoint:dropPoint toView:btn];
if (CGRectContainsPoint(btn.frame, dropPointInBtn)) {
....