我正在制作一个带有移动角色和旋转武器的ios游戏,它有效,但后来我休息了一个月,ios得到了更新9.我的代码不再有效并给了我一个错误。错误是什么,更重要的是我如何解决它?
override func touchesMoved(touches: Set<NSObject>, withEvent event: UIEvent) {
for touch in (touches as! Set<UITouch>) {
let location = touch.locationInNode(self)
if (leftButton.containsPoint(location)){
leftPressed = true
}else{
leftPressed = false
}
if (rightButton.containsPoint(location)){
rightPressed = true
}else{
rightPressed = false
}
}
}
这是我收到错误的代码段之一。这是错误:Method不会覆盖其超类
中的任何方法答案 0 :(得分:0)
可能发生的情况是,在更新iOS 9期间,功能发生了变化,您的实施已经过时且不再有效。
阅读文档here(已在您正在使用的功能中)。
您将功能定义为
touchesMoved(touches: Set<NSObject>, withEvent event: UIEvent)
新实施
touchesMoved(touches: Set<UITouch>, withEvent event: UIEvent?)
您的实现采用不同的数据类型作为参数,因此功能不同,这就是您获取覆盖错误的原因。