У меня есть объект UIView, который можно перетаскивать с помощью UIPanGestureRecognizer, но я хочу, чтобы он мог перемещаться вверх по 3/4 экрана. Я не хочу, чтобы это было подрезано, но чтобы добраться до определенной точки и не быть втянутым дальше. То, что я до сих пор позволяет ему двигаться только по оси Y (что желательно).Ограничение движения UIPanGestureRecognizer
- (IBAction)panGesture:(UIPanGestureRecognizer *)recognizer
{
CGPoint translation = [recognizer translationInView:self.view];
recognizer.view.center = CGPointMake(recognizer.view.center.x,
recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];
}
Благодарим за любую помощь.
Это сработало, спасибо. Я сделал yMin int, что требовало 'self-> yMin'. Это лучший способ обойти вещи? –
Звучит как прекрасный способ сделать это. У вас может быть свойство типа 'int'. Вы просто не объявляете его 'keep/assign/strong/weak'. Но если вам не нужно раскрывать его как свойство, вы можете просто использовать ivar. Вы можете получить доступ к ivar, произнеся «yMin». Вам не нужно говорить 'self-> yMin', если у вас нет локальной переменной, также называемой' yMin', которую вы * не хотите получать. –