【问题标题】:How to set view outlet for a UITableViewController?如何为 UITableViewController 设置视图出口?
【发布时间】:2014-06-27 01:15:30
【问题描述】:

我创建了一个空的 xib,我拖动了一个 UITableViewController,将自定义类设置为我的类,该类在 UITableViewController 和文件的所有者处都从 UITableViewController 扩展。

当我跑步时,它会说:

'一个视图一次最多只能关联一个视图控制器!看法 ;层 = ; contentOffset: {0, 0}> 与 .在将此视图与关联之前清除此关联。'

在连接检查器中,我看到 UITableViewController 元素具有:

  • tableView - 表格视图
  • 视图 - 表格视图(灰色)
  • 数据源 - 表视图
  • 委托 - 表格视图

First Responder 什么都没有。

文件的所有者:

  • tableView 没有附加到任何东西
  • 视图 - 表格视图

如果我删除文件所有者的视图连接,它声称未设置视图出口。

【问题讨论】:

    标签: xcode interface-builder


    【解决方案1】:

    根据所提供的信息,很难想象会发生什么。但是:
    错误消息说您有一个UIView,您尝试在运行时将此UIView 连接到两个 UIViewControllers,这是不可能的。
    如果您只是将UITableViewController 子类化,而不添加属性或实现方法,然后在空的故事板中设置UITableViewController,并将此UITableViewController 的类设置为您的子类,您只有一个 UITableViewController,不会出现此错误。
    因此,在您的项目中的某个地方,您必须以编程方式实例化 一秒 UITableViewController,并将其 UIView 属性(这是一个 UITableView)设置为另一个的 UIView 强>UITableViewController.
    您应该确保只有一个 UITableViewController,即您的自定义子类。

    【讨论】:

    • 谢谢莱因哈德。我没有使用故事板。我完全不使用 UITableViewController 找到了解决方案。所以我的类现在从 UIViewController 扩展,在 xib 中我有一个包含 tableview 的视图。在我的 M 文件中,我有 2 个 IBOutlets 连接到它们。
    【解决方案2】:

    我猜正确的答案是不要将 UITableViewController 拖到界面生成器中。连接了 2 个 IBOutlets,一个用于视图,一个用于表。请改为拖动 UITableView。

    希望这对其他人有所帮助。

    【讨论】:

      猜你喜欢
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多