使用多个 ViewController、Xcode 将代码连接到情节提要中的 UI
Posted
技术标签:
【中文标题】使用多个 ViewController、Xcode 将代码连接到情节提要中的 UI【英文标题】:Connecting code to UI in storyboard with multiple ViewControllers, Xcode 【发布时间】:2014-03-13 02:15:36 【问题描述】:我在 Xcode 中有一个故事板项目。我添加了一个额外的 ViewController 并放入了一个按钮、文本框等。我可以从初始视图控制器转到辅助视图控制器,但我似乎无法将按钮连接到代码。我尝试使用 XIB 添加其他类,甚至从空白添加 XIB。如何连接我为按钮编写的代码以在第二个视图控制器上工作?
【问题讨论】:
你能显示代码吗? 我知道代码有效,我已经在其他应用程序中使用过它。我在头文件中创建了按钮,并在头文件和实现文件中都声明了 IBAction 语句。我无法将第二个和后续视图控制器上的对象连接到代码。蓝线出现,但没有连接。 【参考方案1】:如果您在情节提要上创建了按钮。你必须做一个
-(IBAction)clickButton...
在 .h 和 .m 代码文件中。您可以通过将线从点(在代码名称前面)拖到按钮上,轻松地将代码连接到按钮。
如果您完全在代码中创建了 Button。您必须指定单击时要执行的代码。
[self.buttonName addTarget:self action:@selector(clickButton:) forControlEvents:UIControlEventTouchUpInside];
【讨论】:
我在头文件和实现文件中有代码。问题归结为第二个 UIVIewController 和后续 VC,我无法使用代码将代码连接到 UI 上的对象。即使创建了新的 .h 和 .m,我也无法建立联系。今天我将用不同的方法烧脑,如果我成功了,我会发布如何。 还是不行。我找到了有关导航控制的各种信息,但我不希望这样。我希望它能够像升级到 5 之前一样工作。感谢迄今为止的所有帮助。 啊,现在我明白你的问题了。转到故事板。打开实用程序窗口(在右侧)。单击绘图区域中的视图。在左侧的列表中,您将看到视图中的一项已被选中。为此,必须选择视图的顶层。现在,在实用程序窗口的右键单击第三个选项卡(身份检查器)。列表中有一个名为“自定义类”的区域。在这里,您必须指定文件的名称。所以例如当您的 .m 和 .h 被称为 InfoViewController.m 和 InfoViewController.h 时,InfoViewController。现在您可以使用手册将它们连接起来! 就是文森特。这解决了我的问题。现在要弄清楚下一部分……使用具有 3 个按钮的 UIImage 以编程方式填充视图……这将是我认为最难的部分,到目前为止,我还没有取得进展。【参考方案2】:这就是答案。您将新文件添加到您的项目中,为了搞笑,我们将它们称为 UIViewController 类的 NewViewController。然后,突出显示情节提要中的第二个视图控制器,选择身份检查器,并在自定义类(顶部)下将类更改为最近添加的 NewViewController 类的名称。现在,您的所有代码都将连接到对象等等。再次感谢大家的帮助,现在我可以安息了哈哈。
【讨论】:
以上是关于使用多个 ViewController、Xcode 将代码连接到情节提要中的 UI的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 10.1 ViewController.h 与 ViewController.swift