无法 link 连接器从 IBOutlet 到视图控制器

Can't link connector from IBOutlet to View Controller

我已经为视图控制器创建了文件 AViewController.h 和 AViewController.m - 我已经将此视图控制器的自定义 class 设置为 AViewController

我在 AViewController.h 中定义了一个对象,它是另一个 class B 的实例:

@property (weak, nonatomic) IBOutlet B *object_b;

我希望能够 link 这个 IBOutlet 到视图控制器,这样我就可以用它来调用 class B 的函数来在视图控制器上显示东西。但是,我无法做到这一点——试图从对象拖一条线到视图控制器什么都不做。对象旁边没有错误或黄色警告符号。我也尝试从视图控制器到对象执行此操作,并且还尝试从情节提要中的菜单执行此操作。

我的视图控制器是否应该重命名为 'AViewController'?我还有其他视图控制器,它们的名称与它们的自定义 classes 不同,并且它们没有任何 linking 问题。

我尝试了以下解决方案: XCode 6: can't connect any IBOutlet to ViewControllerError in Xcode 6 - view controller does not have an outlet named (subview), 但他们没有工作。

我正在使用 XCode 6.2

真是个烦人的问题;在之前的问题中有一些关于错误报告的讨论,但我不确定是否已解决。感谢任何帮助!

只要您的 class "B" 不是视图控制器,这应该很容易。第一步是转到你的故事板或相关的 .xib 文件并找到对应于 "AViewController." 的视图控制器然后,找到里面有白色方块的黄色小圆圈(视图控制器顶部)和 control+点击那个。您应该会看到弹出一个黑框。 (见附图)。在框中,应该有一个名为 "Outlets." 的部分。您是否看到下面的一行与您的 "B" 对象相关?如果是这样,然后从该行右侧的白色圆圈拖动到表示视图控制器上的 "B" class 的对象。这将把它连接起来。

如果您在黑框中没有 "B" 的条目,那么视图控制器的设置有问题。

如果您在黑框中有一个 "B" 的条目,但无法将它连接到您的视图控制器,请执行以下步骤:确保您有一个 class 的对象"B" 在情节提要中的视图控制器上。如果你不这样做,那是你的问题。如果你这样做了,但你仍然无法让它工作,你可能需要在情节提要中设置对象的 class 类型。为此,请单击故事板上的对象并查看 xcode 中的右侧面板(下面的屏幕截图 #2)。在面板中,单击上面的第三个图标(它看起来像一个小方块)。在那里您会看到 "custom class." 如果在 "class" 下没有显示 "B",那么这就是您的问题所在。如果这是您的问题,请将 class 设置为 "B",然后尝试按照我回答第一段中概述的步骤再次连接您的插座。