【发布时间】:2011-10-11 13:36:03
【问题描述】:
目前我正在尝试将 NSRect 保存到我的用户默认值。现在我正在使用 NSValue 将其包装为对象,然后使用以下代码将其作为对象保存到用户默认值中
[userDefaults setObject:[NSValue valueWithRect:rect forKey:@"Key"]];
但是,当我运行它时,我收到一条错误消息,显示 [NSUserDefaults setObject:forKey:]: Attempt to insert non-property value 'NSRect: {{0, 0}, {50, 50}}' of class 'NSConcreteValue'。
有谁知道我该如何解决这个问题?谢谢。
【问题讨论】:
-
您在示例中缺少
]。 -
缺少括号与此问题无关,您的答案在我正在链接的另一个 SO 线程上。恐怕您将不得不采取额外的步骤来保存您的 NSRect 对象 - stackoverflow.com/questions/471830/…。
-
感谢您的链接。我完全忘记了 NSUserDefaults 是如何只支持一定数量的对象的。
标签: objective-c cocoa nsuserdefaults