我目前正在实现一个定制的IASKSettingsStore以使用核心数据。你可以看到下面的代码。问题是值的存储变得非常缓慢。例如,当我在文本字段中键入内容时,我知道IASKAppSettingsViewController存储了每一个变化,但我发现即使是一个单独的变化也非常缓慢。我怎样才能使这项工作更快?InAppSettingsKit和核心数据
我该怎么监督?提前致谢。
到目前为止定制IASKSettingsStore看起来像这样:
@implementation GPSettingsStoreCoreData
@synthesize managedObject = _managedObject;
- (id)initWithManagedObject:(NSManagedObject *)managedObject {
self = [super init];
if(self) {
_managedObject = managedObject;
}
return self;
}
- (id)init
{
if (self = [super init]) {
_managedObject = nil;
}
return self;
}
- (void)setBool:(BOOL)value forKey:(NSString*)key {
[self.managedObject setValue:[NSNumber numberWithBool:value] forKey:key];
}
- (void)setFloat:(float)value forKey:(NSString*)key {
[self.managedObject setValue:[NSNumber numberWithFloat:value] forKey:key];
}
- (void)setDouble:(double)value forKey:(NSString*)key {
[self.managedObject setValue:[NSNumber numberWithDouble:value] forKey:key];
}
- (void)setInteger:(int)value forKey:(NSString*)key {
[self.managedObject setValue:[NSNumber numberWithInt:value] forKey:key];
}
- (void)setObject:(id)value forKey:(NSString*)key {
[self.managedObject setValue:value forKey:key];
}
- (BOOL)boolForKey:(NSString*)key {
return [[self.managedObject valueForKey:key] boolValue];
}
- (float)floatForKey:(NSString*)key {
return [[self.managedObject valueForKey:key] floatValue];
}
- (double)doubleForKey:(NSString*)key {
return [[self.managedObject valueForKey:key] doubleValue];
}
- (int)integerForKey:(NSString*)key {
return [[self.managedObject valueForKey:key] intValue];
}
- (id)objectForKey:(NSString*)key {
return [self.managedObject valueForKey:key];
}
@end
很高兴知道,谢谢。我很乐意接受Github上的pull请求,如果你打包(并在Readme中记录)你的改变! – 2013-02-11 08:54:23