使用NSUserDefaults保存CGPoints列表

时间:2011-01-01 21:46:20

标签: objective-c nsuserdefaults nsset cgpoint

我有一堆来自CCTMXLayer的CGPoints我想保存到NSUserDefaults,但似乎无法找到一种优雅的方式。

最初我希望使用NSMutableSet为包含多个NSValues(valueWithCGPoint)的值保存NSDictionary。据我所知,NSUserDefaults不支持NSMutableSet或NSValue。

此时我正在考虑将CGPoint的x& y值保存为字符串,并根据需要来回转换。

2 个答案:

答案 0 :(得分:48)

存在一对函数NSStringFromCGPointCGPointFromString。您可以使用它们来生成表示序列化点的字符串数组,然后在完成后转换回来。

答案 1 :(得分:1)

将它们装入NSValue个对象中。一旦他们在那里,您可以将NSValues写到磁盘(因为它们符合<NSCoding>)或将它们放在NSUserDefaults或其他任何内容中。