我目前正在使用Objective C学习iOS开发。我遇到了一些问题,我想知道是否有人可以给我一些关于xCode的澄清。我正在读一本关于iOS的书,我正在按照它的说明进行操作。
它说要分别创建一个名为test.h和test.m的头文件和一个实现文件。测试类将UIViewController作为超类。这一切都很好......
然后,从说明中,它说将视图控制器从对象库拖出到故事板上。然后,这本书说:
"现在视图控制器已就绪,是时候用正确的控制器类进行设置了。选择视图控制器并调出Identity Inspector。在检查器的“自定义类”部分中,将类更改为test,然后按Return键进行设置。"
我的问题是:更改视图控制器的类以进行测试是否真的很重要?为什么我不能让这个类保持为UIViewController?如果我让这个类保持为UIViewController,那么在故事板中的视图控制器上创建的出口和动作将无法进行通信'故事板中的View Controller与test.h和test.m文件之间?
感谢您阅读
最基本的问候
答案 0 :(得分:4)
是的,你必须设置课程。幸运的是,如果类集没有定义它们,Xcode将不允许您在故事板中添加插座。如果您没有设置正确的类,那么将在运行时实例化错误的类,并且您的自定义代码将无法运行。
请记住,故事板包含您的设计存档,可以在运行时解压缩并使用。它不会自动运行,需要正确配置。例如,如果您要添加指向UIViewController
实例而不是test
(其名称应以大写字母开头)的实例的插座和操作,那么您将在运行时在运行时获得异常已解压缩,并且发现无法连接网点,因为UIViewController
没有定义它们。
答案 1 :(得分:2)
是的,这是强制性的。除了这里发布的其他答案,我想告诉你思考一下这个问题:
假设你有多个Class&您的演示中的ViewController 如何预测XCode如何为特定的类分配适当的类 ViewControllers?