我试图从一个UIViewController (VC1)
到一个UITableViewController (VC2)
,我已经尝试了所有常见的嫌疑人。其他帖子好像没找到解决办法
在 Storyboard 中,我创建了一个从 VC1 到 VC2 的模态序列,并给它一个标识符“
VC2Segue
”。单击 VC1 的连接属性会显示一个
'Storyboard Segue': modal--VC2
.单击 VC2 的连接属性会显示一个
'Referencing Story Board Segue': modal--VC1
在 VC1 中,我有一种
UITableViewDelegate
方法可以响应 VC1 中的单元格选择。这是我尝试转到详细信息视图(VC2)的地方:-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [super tableView:tableView didSelectRowAtIndexPath:indexPath]; [self performSegueWithIdentifier:@"VC2Segue" sender:self];
}
但是,一旦
performSegueWithIdentifier
被调用,我就会收到一个异常:'NSInvalidArgumentException',原因:'接收者(VC1)没有标识符'VC2Segue'的segue'
如果是相关的。VC1 继承自一个外部专有库 (Parse.com:
PFQueryTableViewController
),它似乎实例化了一个“UITableView”。因此 UITableView 不会在 Storyboard 上显示 TableCells,而是 VC1 是 UITableView 的委托,这就是 VC1 (A UIViewController) 访问上述方法的方式。
我检查了三倍的连接,剪切和粘贴文本字段,确保故事板笔尖分别指向类 VC1 和 VC2,并且厌倦了推送和模式。我显然遗漏了一些东西,但这是我第一次使用 iOS 执行任务。