与uipangeStureregognizer一起移动后,保存和segue uiimageView.迅速



美好的一天。

这是我的最后选择 - 在这里询问。

问题是:我正在构建乘数视图应用程序。在第一个屏幕上,我有UIImageView可以使用UIPanGestureRecognizer函数移动:

@IBAction func movement(recognizer: UIPanGestureRecognizer) {
    let translation = recognizer.translationInView(self.view)
    if let view = recognizer.view {
        view.center = CGPoint(x:view.center.x + translation.x, y:view.center.y + translation.y)
    }
    recognizer.setTranslation(CGPointZero, inView: self.view)
}

这是一个通常可以移动问题的代码,我在raywenderlich.com上

所以我想要的是在与之交互后和SEGUE互动后保存UIImageView元素的位置。

我相信我需要从此功能中返回CGPoint并像这样返回它:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "showPlaylistDetail" {
            let playlistDetailController = segue.destinationViewController as! PlaylistDetailViewController
playlistDetailController.image2.center = image1.center
        }
    }

所以我的问题是:

  1. 我是否使用正确的代码将对象移动pan手势识别器?

  2. 您将如何从此功能中返回CGPoint,如何阅读它?

  3. 我将如何保存uiimageView在SEGUE和之后的位置?

嗯...这个小虫子正在杀死我。我敢打赌,这很容易解决,但是就我是初学者而言,我不知道如何:(

从您的描述中有几种解决方案,我将是。

firstViewController

中维护属性currentCenter
var currentCenter:CGPoint

在方法movement中添加以下行,设置view.center

currentCenter.x = view.center.x
currentCenter.y = view.center.y

,然后是您所说的prepareForSegue

希望这种方法有帮助!

最新更新