【问题标题】:XCode and Interface Builder Problem: Cannot Connect UI Elements via IBOutletXCode 和 Interface Builder 问题:无法通过 IBOutlet 连接 UI 元素
【发布时间】:2013-03-27 02:35:42
【问题描述】:

当我犯了一些热键失误或错误时,我可能搞砸了设置或其他东西。不确定,但通常我可以 ctrl+click 并拖动到“文件所有者”,我之前制作的插座会正确显示。

现在没有了。不知道如何解决这个问题。

【问题讨论】:

  • 现在只显示“委托”。

标签: objective-c xcode


【解决方案1】:

"...通常我可以 ctrl+click 并拖动 "File's Owner""

在您的控制器类中添加额外的IBOutlets 后,您通常可以通过将控制器对象拖到视图项,而不是反过来。 (这里,控制器对象通常是File's Owner、“应用程序”或实例化的自定义控制器对象)。

不太频繁地,您可以将视图本身拖到控制器对象或其他视图对象,以设置特定于类的IBOutlets delegate, 和/或 dataSource, menu, formatter 等。例如,NSTextFielddelegateformatter IBOutlet 添加到 NSView@3 和 @9876543 nextKeyViewIBOutlets.

因此,您可能需要仔细检查您是否朝着相关对象的正确方向拖动。

如果您知道自己正在朝着正确的方向拖动,并且 Interface Builder 的行为不像通常应该的那样,那么您可以尝试一些事情。

首先,如果您向控制器类添加了额外的 IBOutlets 并尝试在 Interface Builder 中连接它们,请仔细检查您是否确实为所需的视图对象指定了正确的类。例如,要添加一个新的 IBOutlet,我有时会复制现有的一行,比如IBOutlet NSTextField *textField;,然后粘贴它。然后我会将名称更改为tableView(目的是将IBOutlet 连接到NSTableView),但我会忘记将NSTextField 更改为NSTableView。因此,当我去 Interface Builder 并尝试通过从控制器类拖动到 NSTableView 来“连接”IBOutlet 时,它不会显示弹出菜单,因为表格视图和文本字段是 2 种不同类型的对象.

其次,您可以发布 .h 文件的内容。您可能忘记了;,或者以其他方式创建了导致.h 文件解析(通过Xcode,然后将结果传递给Interface Builder)的可能情况在中途失败。发生这种情况时,它可以防止许多 IBOutlets 等出现在 IB 中。您也可以尝试按原样编译代码,以帮助找出问题所在。我自己偶尔也会这样做。

【讨论】:

    【解决方案2】:

    不确定是否存在会导致此行为的键盘快捷键,但只是为了确定您应该检查以确保您希望看到的插座出现在 Connections Inspector(右手边的 Utilities 抽屉)中。请记住,当您在项目中选择元素时,此面板会发生变化。

    如果您在检查器中看到正确的插座,但仍然没有获得所需的 ctrl+click 行为,我会尝试重新打开您的项目、重新启动 XCode 或查找并删除 XCode prefs 文件。

    祝你好运!

    【讨论】:

    • 我得到“新参考插座”。
    【解决方案3】:

    我遇到了同样的问题:

    1. 我在 Xcode 项目中添加了一个 TableViewController 文件。
    2. 我在正确的头文件中添加了正确的 IBOutlet 属性。
    3. 我在 IB 中添加了一个 TableViewController。
    4. 我在 IB 的 TableView 中添加了控件。

    但我无法将 IB 中的控件连接到插座。问题是我没有将 IB 中的 TableViewController 类与我在 Xcode 中创建的类关联起来。解决方法:在IB的Identity inspector中为TableViewController指定Custom Class。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      • 2011-11-30
      • 2017-02-06
      • 2015-02-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多