1

所以我刚刚将我的 XCode 升级到 4.6 并尝试运行我的应用程序,它可以工作,直到我尝试打开这样的视图:

 problemView *cvc=[[problemView alloc] init];
 [self.navigationController pushViewController:cvc animated:YES];

在我的应用程序中,我使用了很多相同的调用,但没有问题,问题仅在于该视图。执行第二行后,我没有收到任何崩溃报告,它只是转到:

int main(int argc, char *argv[])
{
@autoreleasepool {
    return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}

当我调试时,我发现我的 init 方法被调用并且工作正常,但是我的 viewdidLoad 方法被调用了更新。我的 init 是 preaty 标准:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
    self.title = @"Seznam";
    self.tabBarItem.image = [UIImage imageNamed:@"menu-skodnicentri.png"];
}
return self;
}

有任何想法吗?就在昨天,它工作正常...

编辑:

 2/15/13 10:38:04.080 AM ZM[45906]: *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UITableViewController loadView] loaded the "CentriVC" nib but didn't get a UITableView.'
 *** First throw call stack:
4

2 回答 2

1

我找到了一个解决方案,我需要做的就是添加该功能:

- (void)loadView {
[super loadView];
}

我在这里得到它:加载了“PersonnalDetails”笔尖,但没有得到 UITableView

于 2013-02-15T09:45:00.030 回答
0

您的视图控制器是 typeUITableViewController的,预计会UITableView在 loadView 中创建一个(即您的view属性必须是 type 的实例UITableView)。当你为你的视图控制器使用一个 nib 文件时,进入 Interface Builder 并确保view插座连接到一个UITableView(或一个子类UITableView

于 2013-02-15T09:43:32.033 回答