Movendo o controlador de exibição com base no gesto de movimento panorâmico no scrollview
No momento, tenho um scrollView que ocupa todo o controlador de exibição. O código abaixo é capaz de mover o scrollView, mas eu quero mover todo o controlador de exibição. Como eu faria isso?
override func viewDidLoad() {
pan = UIPanGestureRecognizer(target: self, action: "handlePan:")
self.scrollview.addGestureRecognizer(pan)
}
func handlePan(recognizer:UIPanGestureRecognizer!) {
switch recognizer.state {
case .Changed:
handlePanChanged(recognizer); break
case .Ended:
handlePanTerminated(recognizer); break
case .Cancelled:
handlePanTerminated(recognizer); break
case .Failed:
handlePanTerminated(recognizer); break
default: break
}
}
func handlePanChanged(recognizer:UIPanGestureRecognizer!) {
if let view = recognizer.view {
var translation = recognizer.translationInView(self.view)
println("moving")
view.center = CGPointMake(view.center.x, view.center.y + translation.y);
recognizer.setTranslation(CGPointZero, inView: self.view)
}
}
Eu tentei diferentes variações de "self.view.center ...." "UIApplication.sharedApplication.rootViewController.view.center .." etc.