简而言之,当我将 UITableView 设置为根视图控制器并启动它时,它工作得很好。我所有的自定义 UITableViewCells 都在那里并且看起来很棒。问题是,每当我尝试从 RESideMenu 启动 UITableView 时。当我这样做时,我收到此错误:
2013-07-06 11:49:07.844 halocustoms[4438:c07] *** Assertion failure in -[UITableView dequeueReusableCellWithIdentifier:forIndexPath:],
/SourceCache/UIKit_Sim/UIKit-2380.17/UITableView.m:4460 2013-07-06 11:49:07.845 projectcf32[4438:c07]
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'unable to dequeue a cell with identifier CustomCell -
must register a nib or a class for the identifier or connect a prototype cell in a storyboard'
我在我的 Storyboard 上检查了我的重用标识符大约一百次,它必须工作,因为当应用程序最初启动时一切都很好。只是在从 RESideMenu 中选择 UITableViewController 时。
注意,这是 RESideMenu 显示视图控制器的方式:
RESideMenuItem *homeItem = [[RESideMenuItem alloc] initWithTitle:@"Quick Games" action:^(RESideMenu *menu, RESideMenuItem *item) {
[menu hide];
MyTableView *viewController = [[MyTableView alloc] init];
viewController.title = item.title;
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
[menu setRootViewController:navigationController];
}];
非常感谢!