Storyboard - ViewController setViewDelegate:无法识别的选择器

时间:2013-12-15 21:53:08

标签: ios objective-c delegates storyboard

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

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

  

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

什么可能导致此错误?

这是OptionsController的一部分,它是一个有问题的控制器:

#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]];
}

2 个答案:

答案 0 :(得分:1)

在您的标题文件或情节提要中,您错误地将OptionsController声明为UIView的子类而不是UIViewController

答案 1 :(得分:0)

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

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