我有UITableViewController,当我点击一个单元格时,我想将UINavViewationController与UITableViewController一起显示为模态视图。

我有此功能来准备定序:

- (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 syncy在事务内调用。

是什么导致该错误?

编辑:
它发生在cellForRowAtIndexPath函数的这个位置:
[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

最佳答案

我没有注意到对于函数dequeueReusableCellWithIdentifier:forIndexPath:我必须注册该类,所以我在viewDidLoad函数中做到了:

[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:CellIdentifier];

关于ios - CATransaction在准备定序时同步事务内的被调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19779933/

10-10 03:57