如何在不使用Assistant编辑器的情况下将IBOutlet和IBAction连接到View Controller

Sur*_*gch 4 xcode iboutlet ibaction ios

我知道这里的第二个按钮显示了助理编辑器:

在此输入图像描述

我知道如何通过控件将Interface Out和Action从Interface Builder中的对象拖动到View Controller代码.理想情况下,它应该像文档看起来一样简单:

在此输入图像描述

但是,当我按下"助手"编辑器时,这通常是我对Xcode的看法:

在此输入图像描述

一个烂摊子.我必须尽量减少很多事情,尝试在视图中获取故事板对象,然后找到正确的View Controller.在我可以执行Control-drag之前所有这一切.

有没有办法在不使用助理编辑器的情况下建立连接?(最好不要在我自己输入很多代码.)

Sur*_*gch 6

是的,您可以在没有助手编辑器的情况下完成此操作,也无需编写大量代码。它需要学习做两件事:

  1. 使用代码片段
  2. 使用连接检查器

为 IBOutlet 和 IBAction 创建代码片段

通常,当您使用 Assistant 编辑器创建 IBOutlet 和 IBAction 时,它会自动将这样的代码添加到您的视图控制器中:

@IBOutlet weak var myOutletName: UIButton!

@IBAction func myActionName(sender: AnyObject) {
}
Run Code Online (Sandbox Code Playgroud)

您可以自己输入所有内容,然后在连接检查器中添加连接,但为什么要输入所有这些内容?只需制作一个将自动完成的代码片段。将代码拖到实用程序面板中的代码片段库中。

在此处输入图片说明

给它一个标题,最重要的是,一个完成快捷方式。我将@IBAction代码称为“ibaction” 。

在此处输入图片说明

现在我所要做的就是开始输入“ibaction”,我可以自动完成代码片段。我只需要编辑动作的名称。这与 Outlet 的过程类似。

阅读有关创建代码片段的更多信息:

现在您要做的就是将 IB 对象连接到代码。

与连接检查器建立连接

首先,单击故事板中要连接的对象。对我来说,我正在使用一个按钮。

然后选择连接检查器。它在最右边。

在此处输入图片说明

或者,您可以右键单击或控制单击对象以获取菜单。

在此处输入图片说明

然后单击“新引用插座”将其连接到您的插座或“已发送事件”下的“内部触摸”以将其连接到您的操作。

在此处输入图片说明

无论出于何种原因,我发现有时我需要在单击“+”按钮后稍微拖动一点才能显示可用连接的菜单。


noo*_*obs 5

不要按助理编辑器按钮.有时它会打开一个随机文件而不是您想要的文件.

当您在Storyboard中时,Option会单击要在Project Navigator中打开的.h文件.这将打开正确的.h文件以添加出口或操作.

完成后,关闭"助手"编辑器右侧窗格(显示.h文件),然后您将返回到Storyboard中.