【问题标题】:Can't push my view controller when I select a table view cell当我选择表格视图单元格时无法推送我的视图控制器
【发布时间】:2015-11-26 11:48:30
【问题描述】:

我正在使用 Objective-C。当我选择一个表格视图单元格时,我想推送一个新的 vier 控制器。这是我的代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    detailViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"detailVC"];
    //something
    [self.navigationController pushViewController:vc animated:YES];
}

我的故事板中有一个详细视图控制器,并将其故事板 ID 设置为“detilVC”。但是当我选择一个表格视图单元格时,模拟器会冻结。有人可以帮助我吗?

【问题讨论】:

  • 为什么不使用故事板转场? (ctrl+从单元格拖动到视图控制器,您可以选择是在选择时还是在点击附件按钮时进行segue)。
  • 在 [self.navig .. 行中设置断点,并检查 vc 对象是否不为零——它可能由于某种原因没有正确实例化。

标签: ios objective-c uitableview uinavigationcontroller


【解决方案1】:

获取一个导航控制器,并将当前控制器从您的 didSelectRowAtIndexPath 调用到它在情节提要中的根控制器。检查以下示例。

然后用鼠标右键拖动到你当前的控制器并使其成为“根视图控制器”,如下所示:

构建并运行您的应用程序。

【讨论】:

    【解决方案2】:

    确保“self.navigationController”不为零且“vc”不为零

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多