我有一堆来自CCTMXLayer的CGPoints我想保存到NSUserDefaults,但似乎无法找到一种优雅的方式。
最初我希望使用NSMutableSet为包含多个NSValues(valueWithCGPoint)的值保存NSDictionary。据我所知,NSUserDefaults不支持NSMutableSet或NSValue。
此时我正在考虑将CGPoint的x& y值保存为字符串,并根据需要来回转换。
答案 0 :(得分:48)
存在一对函数NSStringFromCGPoint
和CGPointFromString
。您可以使用它们来生成表示序列化点的字符串数组,然后在完成后转换回来。
答案 1 :(得分:1)
将它们装入NSValue
个对象中。一旦他们在那里,您可以将NSValues
写到磁盘(因为它们符合<NSCoding>
)或将它们放在NSUserDefaults
或其他任何内容中。