我正在制作一个跳棋游戏并使用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)
}
答案 0 :(得分:1)
UIView
有一个标记属性(Int),您可以将其用于任何您想要的目的。您可以为每个人提供一个唯一的号码,您可以在平移动作中查看。
如果你想做更多,继承UIImageView并添加属性非常简单。