Отключение Pan Gesture, если обнаружены границы
У меня есть UIView, я пытаюсь перемещаться вверх и вниз по экрану, однако я хочу только включить его панорамирование, чтобы вы не могли перетащить вид вниз, когда он находится в нормальном положении (0, 0)
Я пытался определить, когда распознавательЦентр s не равен половине высоты вида, однако вид тогда неподвижен, и центр всегда равен половине высоты (в данном случае 230).
Есть идеи?
- (IBAction)panDetected:(UIPanGestureRecognizer *)recognizer {
CGPoint translation = [recognizer translationInView:self.view];
NSLog(@"\ncenter.y: %f\ntranslation.y: %f\n", recognizer.view.center.y, translation.y);
if (recognizer.view.center.y > ([[UIScreen mainScreen] bounds].size.height - 20)/2) {
return;
}
recognizer.view.center = CGPointMake(recognizer.view.center.x,
recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];
}