我们知道大多数情况下,我们可以在SKNode实例的name属性中添加一些个性数据,不过一来只能使用一次,如果还有其他数据就无解了,二来只能存放String类型,如果还要存放其他类型呢?还是无解!
不过不知各位是否注意,其实SKNode还提供一个非常有用的属性,可以用它存放任意数据类型,它就是userData!
它是一个字典类型,我们可以任意组织数据存入其中供后来使用:
let imageName = rndBallName()
let ball = SKSpriteNode(imageNamed: imageName)
ball.userData = ["imageName":imageName]
//......
在需要的地方我们可以解包,然后使用:
let imageName = ball.userData!["imageName"] as! String
//......
很方便吧! :)
作者:mydo 发表于2017/4/15 16:35:06 原文链接
阅读:192 评论:0 查看评论