2016-07-08 3 views
1

У меня есть эта функция:Swift сброса transitionInView

func moveAxes(recognizer: UIPanGestureRecognizer) { 
    switch recognizer.state { 
    case .Changed: 
     var changePoint = recognizer.translationInView(self) 
     axesCenter = CGPoint(x: axesCenter.x + changePoint.x, y: axesCenter.y + changePoint.y) 

     print("x: \(changePoint.x) y: \(changePoint.y)") 
     changePoint.x = 0.0 
     changePoint.y = 0.0 
    default: 
     break 
    } 
} 

, которые должны двигаться вокруг своих осей в UIView. Проблема заключается в том, что

changePoint.x = 0.0 
changePoint.y = 0.0 

не сбрасывает пройденное расстояние и держит сложение, так что мои оси начинают ускоряться от движущейся точки. Как я могу сбросить пройденное расстояние, чтобы избежать этой проблемы?

p.s. axesCenter инициализируется как x: frame.midX, y: frame.midY

ответ

0

Я решить мою проблему, переключая это:

changePoint.x = 0.0 
changePoint.y = 0.0 

с этим recognizer.setTranslation(CGPoint(x: 0.0, y: 0.0), inView: self)

Смежные вопросы