【发布时间】:2012-08-16 10:11:25
【问题描述】:
我有我的UIImageView,我有另一个UIView 矩形。通过对UIView 矩形应用平移手势,它也会超出UIImageView。我不想被拖出UIImageView
我尝试了下面的代码,但它不是那样工作
-(void)handleMovementView:(UIPanGestureRecognizer *)recognizer
{
CGPoint movement;
if(recognizer.state == UIGestureRecognizerStateBegan || recognizer.state == UIGestureRecognizerStateChanged || recognizer.state == UIGestureRecognizerStateEnded)
{
CGRect rec = recognizer.view.frame;
CGRect imgvw = self.imgViewCrop.frame;
if((rec.origin.x >= imgvw.origin.x && (rec.origin.x + rec.size.width <= imgvw.origin.x + imgvw.size.width)))
{
CGPoint translation = [recognizer translationInView:recognizer.view.superview];
movement = translation;
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointZero inView:recognizer.view.superview];
[self handleMovementForHandlers:movement];
}
}
}
如果我缓慢应用 Pan,它会应用此条件,但当我快速应用时,它会超出 ImageView
【问题讨论】:
标签: iphone objective-c uiimageview uigesturerecognizer uipangesturerecognizer