【问题标题】:controller has no segue with identifier error控制器没有标识符错误的segue
【发布时间】:2013-05-07 16:16:43
【问题描述】:

我在转到 uitableview 并查看其详细信息视图时收到此错误。由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“Receiver () has no segue with identifier 'lmDetails'”

我有两个标签栏,如果我调用包含 uitableview 的标签栏 2 会发生预期,如果单击按钮,这将打开 uitableview 1。从 uitableview 1 转到其详细信息视图时会显示该错误。在 uitableview 2 中,我使用以下 segue 调用 uitableview1 来显示:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([segue.identifier isEqualToString: @"seguelmResults"]) {
        LMResultsTableViewController *cvc = (LMResultsTableViewController *)[segue  destinationViewController];
        NSIndexPath *indexPath = sender;
        HolidayChartListItem *obj=[[HolidayChartListItem alloc]init];
        obj= [totalArray objectAtIndex:indexPath.row];
        cvc.selDestinationId = obj.DestinationId;
        cvc.selCountryId = obj.CountryId;
}

如果我从标签栏 1 打开 uitableview 1 - 而不是从 uitableview 2 打开,则转到详细信息页面时不会出现错误。

【问题讨论】:

  • 标识符 'lmDetails'' 未在您提供的示例中列出。你确定它存在还是一个错字?听起来您设置的 segue 是 lmDetails 而不是您提供的示例中的 seguelmResults。
  • 就像错误状态一样Receiver () 没有标识符为“lmDetails”的segue。检查你的故事板 segues 标识符。

标签: iphone ios objective-c xcode


【解决方案1】:

听起来您设置的 segue 是“lmDetails”,而不是您提供的示例中的“seguelmResults”。

【讨论】:

  • 好吧,不——我先让用户转到名为“seguelmResults”的 uitableview,然后再转到详细信息页面,这就是错误发生的地方。所以结构是 -> uitableview -> uitableview -> details
  • 当您说名为“segueImResults”的 uitableview 时,您指的是 segue,对吗?您对布局的解释非常混乱。你有 2 个 UITabBars 吗?还是您有 1 个带有 2 个项目的 UITabBar?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-21
  • 1970-01-01
  • 1970-01-01
  • 2015-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多