我知道他们已经对这个问题提出了很多问题,但我的情况有所不同。尝试插入非属性列表对象 - NSUserDefaults - 类属性
我想要做的是在NSUserDefaults中保存一个“类属性”。要创建“类属性”我这样做:
// MyClass.h
#import <Foundation/Foundation.h>
static NSString *userIndex;
@interface PlanGenerator : NSObject
+ (void)setUserIndex:(NSString *)userIndexNew;
+ (NSString *)userIndex;
@end
// MyClass.m
#import "MyClass.h"
@implementation MyClass
+ (void)setUserIndex:(NSString *)userIndexNew
{
userIndex = userIndexNew;
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:userDefaults forKey:@"UserIndex"];
[userDefaults synchronize];
}
+ (NSString *)userIndex
{
return userIndex;
}
@end
但是,当我想的setObject:userIndex出错的应用程序崩溃:
attempt to insert non-property list object <NSUserDefaults: 0x109409e50> for key UserIndex'
任何一个想法如何解决这一问题?
不应该像“userIndex = userJahrgNeu;” ?另外,您似乎在尝试执行“UserDefaultsception”,这是故意的吗? – EDUsta 2014-09-04 18:46:38
我对此感到非常抱歉。那是因为我编辑了一个真实项目的代码并试图使用通用变量名称。我修好了,现在应该是正确的。 – Codey 2014-09-04 19:23:48