我有一个基于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]];
}
答案 0 :(得分:1)
在您的标题文件或情节提要中,您错误地将OptionsController
声明为UIView
的子类而不是UIViewController
。
答案 1 :(得分:0)
很难说。方法名称_setViewDelegate几乎可以肯定是内部方法。
发布创建新视图控制器并显示它的代码。