0
A
回答
0
你把SKSpriteNode
数组到定时器的userInfo
。 当计时器启动时,被调用的方法返回userInfo
作为AnyObject
。 只是将对象向下转换为适当的类型。
let listAlienBullet = timer.userInfo as! [SKSpriteNode]
let alienForDestroying = listAlienBullet[0]
let bulletForDestroying = listAlienBullet[1]
1
userInfo
是AnyObject
。你不能标下AnyObject
。
将listAlienBullet
转换为SKSpriteNodes的Array
。
if let listAlienBullet = timer.userInfo as? [SKSpriteNode] {
let alienForDestroying = listAlienBullet[0]
let bulletForDestroying = listAlienBullet[1]
}
+0
当我尝试这个时,我有另一个错误:输入'Dictionary
+0
抱歉的旧习惯。将Dictionary更改为[String:AnyObject]相同的东西,但是您必须告诉编译器该字典应该包含哪些内容。类型安全和所有。 –
相关问题
- 1. 不能下标[AnyObject]的值?与一个索引类型Int
- 2. 下标一个泛型类型的错误:错误:不能下标值为'[T]'
- 3. 不能下标型anyobject
- 4. 不能下标[AnyObject]的值?索引类型字符串
- 5. 不能使用索引类型为字符串的下标AnyObject类型(Swift)
- 6. 使用下标时出错:不能下标值类型为...的类型为
- 7. 迭代AnyObject。错误:类型'AnyObject'不符合协议'SequenceType'
- 8. 错误:无法指定'AnyObject'类型的值?到类型'NSURL'的值
- 9. Swift中的NSDictionary:无法下标'AnyObject'类型的值与'Int'类型的索引
- 10. 不能下标值的类型[MPMediaItem]
- 11. 不能下标值的类型'[UInt32]'
- 12. 不能下标值的类型 - Swift 3
- 13. Swift - AnyObject []不是AnyObject []的子类型吗?
- 14. 斯威夫特错误“不能下标值类型[Uint8]”
- 15. Swift 3 - 错误'上下文类型'AnyObject'不能用于字典文字'
- 16. 不能键入“的NSArray”的值赋给类型为“[AnyObject]”
- 17. 斯威夫特。错误:无法将类型'[AnyObject?]'的值转换为期望的参数类型'AnyObject?'
- 18. 不能与类型的索引,下标类型“[INT]”的值“()”
- 19. 上下文类型AnyObject不能用于坐标的数组文字
- 20. 不能下标值类型'inout [AnyHashable:Any
- 21. 得到一个类型错误功能不存在错误
- 22. 不能为索引类型为'String'的类型'[String:AnyObject]'下标值
- 23. 不能下标类型的值“[Int16类型]”
- 24. dispatch_after错误:'[AnyObject]?'是不是一个亚型“太虚”
- 25. 编译器错误:“光标不能解析为一个类型”
- 26. 错误:返回值类型不匹配的功能类型
- 27. 上下文类型'AnyObject'不能用于字典文字?
- 28. 无效类型的下标错误
- 29. performSegueWithIdentifier - 无法将类型'AnyObject'的值转换为参数类型'AnyObject?'
- 30. 收到错误:“不能与类型的索引,下标类型的‘[双]’值‘(任何) - >内部’”
非常感谢你的工作! –