无法将类型 [AnyObject] 的值转换为预期的参数类型 [SKAction]
Cannot convert value of type [AnyObject] to expected argument type [SKAction]
关于第二行:
var actionArray:NSMutableArray = NSMutableArray()
human1.runAction(SKAction.repeatAction(SKAction.sequence(actionArray as [AnyObject]), count: -1))
在之前的 xCode 上运行良好,更新到新 xCode 时出现错误。
我该如何消除错误?
错误:无法将类型 [AnyObject] 的值转换为预期的参数类型 [SKAction]
//////编辑:
var actionArray = [SKAction]()
actionArray.addObject(SKAction.moveTo(CGPointMake(posAutoY1, -3*frame.size.height/20), duration: NSTimeInterval(duration1)))
actionArray.addObject(SKAction.removeFromParent())
auto1.runAction(SKAction.sequence(actionArray as [SKAction]))
如果使用这些代码行,第一个错误得到解决,但我得到另一个错误:[SKAction] 类型的值没有成员 addObject
错误很清楚问题是什么:SKAction.sequence(_)
的预期参数是 SKAction
的数组,而不是 AnyObject
的数组。出于某种原因,您明确地将 actionArray
转换为 [AnyObject]
;只需转换为 [SKAction]
即可:
human1.runAction(SKAction.repeatAction(SKAction.sequence(actionArray as! [SKAction]), count: -1))
但是,最好先将 actionArray
声明为 [SKAction]
! NSMutableArray
是老派。
var actionArray = [SKAction]()
actionArray.append(SKAction.moveTo(CGPointMake(posAutoY1, -3*frame.size.height/20), duration: NSTimeInterval(duration1)))
actionArray.append(SKAction.removeFromParent())
auto1.runAction(SKAction.sequence(actionArray))
使用 Append() 方法。
anArray.append("This String")
关于第二行:
var actionArray:NSMutableArray = NSMutableArray()
human1.runAction(SKAction.repeatAction(SKAction.sequence(actionArray as [AnyObject]), count: -1))
在之前的 xCode 上运行良好,更新到新 xCode 时出现错误。 我该如何消除错误?
错误:无法将类型 [AnyObject] 的值转换为预期的参数类型 [SKAction]
//////编辑:
var actionArray = [SKAction]()
actionArray.addObject(SKAction.moveTo(CGPointMake(posAutoY1, -3*frame.size.height/20), duration: NSTimeInterval(duration1)))
actionArray.addObject(SKAction.removeFromParent())
auto1.runAction(SKAction.sequence(actionArray as [SKAction]))
如果使用这些代码行,第一个错误得到解决,但我得到另一个错误:[SKAction] 类型的值没有成员 addObject
错误很清楚问题是什么:SKAction.sequence(_)
的预期参数是 SKAction
的数组,而不是 AnyObject
的数组。出于某种原因,您明确地将 actionArray
转换为 [AnyObject]
;只需转换为 [SKAction]
即可:
human1.runAction(SKAction.repeatAction(SKAction.sequence(actionArray as! [SKAction]), count: -1))
但是,最好先将 actionArray
声明为 [SKAction]
! NSMutableArray
是老派。
var actionArray = [SKAction]()
actionArray.append(SKAction.moveTo(CGPointMake(posAutoY1, -3*frame.size.height/20), duration: NSTimeInterval(duration1)))
actionArray.append(SKAction.removeFromParent())
auto1.runAction(SKAction.sequence(actionArray))
使用 Append() 方法。
anArray.append("This String")