查找正在拖动的ImageView

时间:2017-11-09 19:05:07

标签: ios swift uipangesturerecognizer

我正在制作一个跳棋游戏并使用UIPanGestureRecognizer来拖动ImageView。我试图找到ImageView在屏幕上被拖动的内容,这样我就可以找到它所在的团队,以及它是否为国王,所以我知道移动是否合法。

    func pieceMoved(gesture: UIPanGestureRecognizer){

    if gesture.state == UIGestureRecognizerState.ended {
        tapEnd = gesture.location(in: self.view)
        print(tapBegin)
        print(tapEnd)
        checkBounds(begin: tapBegin, end: tapEnd)
    }else if gesture.state == UIGestureRecognizerState.began{
        tapBegin = gesture.location(in: self.view)
    }
}

@objc func myPanAction(recognizer: UIPanGestureRecognizer) {
    let translation = recognizer.translation(in: self.view)

    if let myView = recognizer.view {
        myView.center = CGPoint(x: myView.center.x + translation.x, y: myView.center.y + translation.y)
    }
    pieceMoved(gesture: recognizer)
    recognizer.setTranslation(CGPoint(x: 0, y: 0), in: self.view)
}

1 个答案:

答案 0 :(得分:1)

UIView有一个标记属性(Int),您可以将其用于任何您想要的目的。您可以为每个人提供一个唯一的号码,您可以在平移动作中查看。

如果你想做更多,继承UIImageView并添加属性非常简单。