overrIDe func touchesBegan(touches: Set<UItouch>,withEvent event: UIEvent?) {}overrIDe func touchesMoved(touches: Set<UItouch>,withEvent event: UIEvent?) { for touch in (touches ) { let location = touch.locationInNode(self) if ball.containsPoint(location) { ball.position = location }}}
这段代码确实有效,但是当我快速拖动球时,我猜它会检测到“球”不再包含点“位置”并且球停止,这意味着我再次接球.我希望球能够快速响应我的触球,这样球就不会停止移动.我该怎么办?
我有一个实现,我已经将UIImageVIEw子类化并称之为“DraggableImage”overrIDe func touchesBegan(_ touches: Set<UItouch>,with event: UIEvent?) { originalposition = self.center }overrIDe func touchesMoved(_ touches: Set<UItouch>,with event: UIEvent?) { if let touch = touches.first { let position = touch.location(in: self.supervIEw) self.center = CGPoint(x: position.x,y: position.y) } }overrIDe func touchesEnded(_ touches: Set<UItouch>,with event: UIEvent?) { self.center = originalposition }总结
以上是内存溢出为你收集整理的如何在Swift 3.0中拖放精灵?全部内容,希望文章能够帮你解决如何在Swift 3.0中拖放精灵?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)