无法将类型 [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")