i具有带有核心数据的Uistoryboard的UitableView。在iPhone上,Uitable View正确加载,但没有在iPad上。
TableViewController会更新Navbar标题并正确设置工具栏,因此可以肯定的是,故事板文件正常加载。当TVC加载时,我正在打印应该填充表的项目数(正确的值),但是NumberOfrowsInsection没有显示任何项目。
在TVC内部,没有以设备为中心的代码路径。故事板中的代表和数据源已连接,故事板ID设置了,电视子类也是如此。
。我在这里完全损失。如果我应该发布特定的代码,请在评论中告诉我。
AppsListTableViewController *appsList = (AppsListTableViewController *)[self appListTableViewController];
UINavigationController * masterNavController = [[UINavigationController alloc] initWithRootViewController:appsList];
masterNavController.toolbarHidden = NO;
masterNavController.navigationBar.barStyle = UIBarStyleDefault;
if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) {
BugsForAppDetailTableViewController *bugsForApp = (BugsForAppDetailTableViewController *)[self bugsForAppTVC];
[appsList setDetailViewController:bugsForApp];
UINavigationController * detailNavController = [[UINavigationController alloc] initWithRootViewController:bugsForApp];
detailNavController.toolbarHidden = NO;
detailNavController.navigationBar.barStyle = UIBarStyleDefault;
[self.splitViewController setViewControllers:@[masterNavController, detailNavController]];
self.splitViewController.delegate = appsList;
}
else if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone) {
[_drawerController setCenterViewController:masterNavController];
[_drawerController closeDrawerAnimated:YES completion:^(BOOL finished) {
if (finished) {
}
}];
}
和bugsforapptvc getter
- (BugsForAppDetailTableViewController *)bugsForAppTVC {
if (_bugsForAppTVC == nil) {
UIStoryboard *storyboard = nil;
if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
} else {
storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
}
BugsForAppDetailTableViewController * centerViewController = (BugsForAppDetailTableViewController *)[storyboard instantiateViewControllerWithIdentifier:@"BugsForAppDetailTableViewController_ID"];
[centerViewController setMOContext:[NSManagedObjectContext MR_defaultContext]];
_bugsForAppTVC = centerViewController;
}
return _bugsForAppTVC;
}
您需要将iPhone故事板的设置与表视图控制器与iPad故事板的设置进行比较。检查这些项目:
-
delegate
set -
datasource
set - DataSource提供了预期的核心数据对象
- 控制器子类正确
- 单元子类设置正确
- 单元标识符正确
- 表查看
IBOutlet
如果必要时正确定义