在我的swift spritekit游戏中,我想在精灵上设置一个自定义值,我试着这样做
p.userData?.setValue(value: "Hello", forKey: "c")
但是,当我尝试这个时,它会说"无法找到过来的'setValue'接受提供的参数"。
所以主要的问题是:
如何在精灵上设置自定义值?
答案 0 :(得分:14)
方法中的第一个参数没有外部参数名称, 因此它应该是
p.userData?.setValue("Hello", forKey: "c")
或更好(因为userData
是NSMutableDictionary
而没有键值编码
这里需要魔术):
p.userData?.setObject("Hello", forKey: "c")
另请注意(如评论中所述)您必须创建字典 第一:
p.userData = NSMutableDictionary()
p.userData?.setObject("Hello", forKey: "c")
或者,使用您的键和值分配字典:
p.userData = ["c" : "Hello"]