我想创建一个新的视图控制器,它将是主视图控制器。但是,不知何故,我无法找到如何抛出此异常。尝试重新启动XCode,重新启动计算机,清理项目,从模拟器中删除。没有解决。以下是详细信息:
这是抛出的异常。
Xcode的Finder View就像这样
应用的实际文件夹
加载nib的代码块
#pragma mark - View's life cycle
- (void)viewDidLoad
{
[super viewDidLoad];
UINib *nib = [UINib nibWithNibName:@"MainMenuCell.xib" bundle:nil];
[self.tableView registerNib:nib forCellReuseIdentifier:@"MainMenuCell"];
self.tableView.delegate = self;
}
声明了nib所有者的父视图控制器
@implementation BNRAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launches
self.window.rootViewController = [[MainMenuViewController alloc] init];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
Nib的实施文件(MainMenuCell.m)
#import "MainMenuCell.h"
@implementation MainMenuCell
- (void)awakeFromNib
{
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end
在IB内宣布的重用标识符
nib的自定义类
在Build Phases中复制应用程序的Bundle资源
构建阶段中已编译的应用来源
有太多的图片我为此道歉,但我已经截取了所有内容,以便检查我的一致性。任何想法都会受到极大的欢迎(在那里失去了5个小时!!!)。
答案 0 :(得分:0)
您无需在笔尖加载代码中指定文件扩展名。 Cocoa会自动为您处理。
UINib *nib = [UINib nibWithNibName:@"MainMenuCell.xib" bundle:nil];
应该是:
UINib *nib = [UINib nibWithNibName:@"MainMenuCell" bundle:nil];