2015-10-18 70 views

回答

0

你把SKSpriteNode数组到定时器的userInfo。 当计时器启动时,被调用的方法返回userInfo作为AnyObject。 只是将对象向下转换为适当的类型。

let listAlienBullet = timer.userInfo as! [SKSpriteNode] 
let alienForDestroying = listAlienBullet[0] 
let bulletForDestroying = listAlienBullet[1] 
+0

非常感谢你的工作! –

1

userInfoAnyObject。你不能标下AnyObject

listAlienBullet转换为SKSpriteNodes的Array

if let listAlienBullet = timer.userInfo as? [SKSpriteNode] { 
    let alienForDestroying = listAlienBullet[0] 
    let bulletForDestroying = listAlienBullet[1] 
} 
+0

当我尝试这个时,我有另一个错误:输入'Dictionary ?'不符合协议'Hashable' –

+0

抱歉的旧习惯。将Dictionary更改为[String:AnyObject]相同的东西,但是您必须告诉编译器该字典应该包含哪些内容。类型安全和所有。 –

相关问题