Ios 情节提要-ViewController setViewDelegate:无法识别的选择器

Ios 情节提要-ViewController setViewDelegate:无法识别的选择器,ios,objective-c,delegates,storyboard,Ios,Objective C,Delegates,Storyboard,我有一个基于故事板的应用程序。每个视图控制器(在故事板中)都有自己的自定义类(带有.h和.m文件) 这些控制器从UIViewController继承。当调用任何控制器(第一个除外)时,我得到一个错误: [控制器_setViewDelegate:]:发送到实例0x8ab94e0的选择器无法识别 什么可能导致此错误 以下是OptionController的一部分,它是有问题的控制器之一: #import "OptionsController.h" @implementation OptionsCo

我有一个基于故事板的应用程序。每个视图控制器(在故事板中)都有自己的自定义类(带有.h和.m文件)

这些控制器从UIViewController继承。当调用任何控制器(第一个除外)时,我得到一个错误:

[控制器_setViewDelegate:]:发送到实例0x8ab94e0的选择器无法识别

什么可能导致此错误

以下是OptionController的一部分,它是有问题的控制器之一:

#import "OptionsController.h"

@implementation OptionsController

- (id)init
{
    if (self = [super init]) {
        // Initialization code
    }
    return self;
}

-(void)viewWillAppear:(BOOL)animated
{
    [self.musicSwitch setOn:[[[NSUserDefaults standardUserDefaults]objectForKey:@"music"] boolValue]];
    [self.soundSwitch setOn:[[[NSUserDefaults standardUserDefaults]objectForKey:@"sound"] boolValue]];
}

很难说。方法名_setViewDelegate几乎肯定是内部方法


发布创建新视图控制器并显示它的代码。

在头文件或故事板中,您错误地将
optioncontroller
声明为
UIView
的子类,而不是
UIViewController

您尝试过在
[UIViewController-\u setViewDelegate:]上设置断点吗
?您可以查看堆栈跟踪并查看调用它的原因。在optionController.h中,可能存在重复的选项。我有如下内容:@interface optioncontroller:UIViewController和您的故事板中?在故事板中也有UIViewController