本文介绍了此类不是键值givenName的键值编码兼容的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这个
- (void)loadView {
BOOL success;
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString* documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* databasePath = [documentsPath stringByAppendingPathComponent:@"ProxDeals.db"];
NSError *error;
BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:databasePath];
if (fileExists==TRUE) {
[[NSBundle mainBundle] loadNibNamed:@"ProxDealsViewController" owner:self options:nil];
}
else {
NSString *defaultDBPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"ProxDeals.db"];
NSLog(@"%@",defaultDBPath);
success = [fileManager copyItemAtPath:defaultDBPath toPath:databasePath error:&error];
if (!success) {
NSAssert1(0, @"Failed to create writable database file with message '%@/.", [error localizedDescription]);
}
[[NSBundle mainBundle] loadNibNamed:@"UserRegistration" owner:self options:nil];
}
}
并且此错误:
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<ProxDealsViewController 0x5f22160> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key givenName.'
我知道我在UserRegistration nib的初始化中没有做些什么,但我不知道如何解决这个问题。
I know that i don't do something wright in the initialization of the UserRegistration nib but i don't know how to fix this.
推荐答案
这通常意味着某些东西试图访问@propertygivenName。
This usually means that something is trying to access the @property "givenName".
如果您正在对IB做某事,通常的原因是您要么:
If you were doing something with IB, the usual cause is that you either:
- 从类中删除该属性,
但尚未删除IB
中的连接 - 或者:你有一个文件所有者
对象设置为错误的类(检查
属性 - 根据你使用的xcode版本而不同 - 查找类名它设置为
。您可能复制/粘贴了一个NIB文件,并且没有在NIB中更改此字段),并且您已经连接了该类的
插座,但是您的
实际文件的所有者是
不同
这篇关于此类不是键值givenName的键值编码兼容的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!