Bewegen des Ansichtscontrollers basierend auf der Schwenkgeste in der Bildlaufansicht
Right jetzt habe ich ein scrollView, das den gesamten Ansichtscontroller einnimmt. Der folgende Code ist in der Lage, die Bildlaufansicht zu verschieben, aber ich möchte den gesamten Ansichtscontroller verschieben. Wie würde ich das machen?
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)
}
}
Ich habe verschiedene Varianten von "self.view.center ...." "UIApplication.sharedApplication.rootViewController.view.center .." usw. ausprobiert.