UIViewController setValue:forUndefinedKey:删除了xib

时间:2015-11-25 07:11:12

标签: ios xcode uiviewcontroller xib nsunknownkeyexception

我最近删除了特定UIViewController子类的xib 。但是,从那以后我只在设备上收到以下错误,而不是模拟器:

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<CustomWebViewController 0x192494d0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key btnBack.'

我之前在XIB中将btnBack设置为IBOutlet,并且已经删除了该属性。

XIB已删除,我已无数次清理该项目,但此问题仍然存在。

如何在我的代码中查找此属性的设置位置,或在XCode中清除此问题?

编辑: 为了说清楚:

  • xib曾经存在,但后来被删除了。
  • 所有IBOutlet属性也已删除。
  • viewController的实例化只使用代码发生。
  • 如果我没有删除属性,那么就不会发生这种情况。
  • 这可能是一个XCode错误,我希望有人也遇到过这个问题并解决了它。

2 个答案:

答案 0 :(得分:0)

请查看连接检查员。 View是否正确连接到File的所有者并正确删除了btnBack连接?

答案 1 :(得分:0)

我不知道到底发生了什么,但我还没有在课堂上覆盖-init方法。

覆盖所有init方法之后:

-(instancetype)init
{
    if (self = [super init])
    {

    }

    return self;
}

-(instancetype)initWithCoder:(NSCoder *)aDecoder
{
    if (self = [super initWithCoder:aDecoder])
    {

    }

    return self;
}

-(instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])
    {

    }

    return self;
}

一切都很好。