我目前有一个带有两个视图控制器的应用程序。第一个是具有嵌入式表视图的视图控制器,该表视图具有动态单元格。第二个是带有静态单元格的表视图控制器。如果我通过选择动态表的单元格之一将 Segue 添加到静态表视图控制器(使用 Push 或 Modal 样式设置),我可以看到 Segue 按预期工作。但是,当我将样式更改为 Popover 时,出现以下编译错误:
Couldn't compile connection: <IBCocoaTouchOutletConnection:0x4004c75a0 <IBProxyObject: 0x400647960> => anchorView => <IBUITableViewCell: 0x400f58aa0>>
有其他人遇到过这个问题吗?或者有谁知道这个错误消息可能意味着什么?除非 Popover 不支持静态表视图控制器,否则在编译时发生这种情况似乎很奇怪......
我想出了如何做到这一点。您无法将其从情节提要中连接起来,但可以通过编程方式执行此操作,如下所示:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad"
bundle:nil];
UITableViewController *detailController = [sb instantiateViewControllerWithIdentifier:@"TableSettingDetails"];
self.popoverController = [[UIPopoverController alloc] initWithContentViewController:detailController];
self.popoverController.popoverContentSize = CGSizeMake(320, 416);
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
[self.popoverController presentPopoverFromRect:cell.bounds inView:cell.contentView
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
}
只需确保您在控制器中引用了弹出窗口,否则它将立即被处理 - 导致一些其他有趣的异常。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)