我有UITableViewController,当我点击一个单元格时,我想用UITableViewController作为模态视图显示UINavigationController。
我有这个功能来准备seque:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"ShowTitles"]) {
UINavigationController *navigationController = (UINavigationController *)segue.destinationViewController;
if (navigationController) {
DataListViewController *dataListController = (DataListViewController *)[navigationController topViewController];
if (dataListController) {
dataListController.delegate = self;
dataListController.viewTitle = NSLocalizedString(@"Titles", nil);
dataListController.dataArray = [NSMutableArray arrayWithArray:self.titles];
}
}
}
}
但是当我点击单元格时,我收到此错误:在事务中调用CATransaction同步。
什么可能导致错误?
编辑: 它发生在cellForRowAtIndexPath函数的这个地方:
[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
答案 0 :(得分:2)
我没注意到函数dequeueReusableCellWithIdentifier:forIndexPath:我必须注册这个类,所以我在viewDidLoad函数中做到了:
[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:CellIdentifier];