IB中的连接故障

时间:2010-02-07 09:47:39

标签: iphone xcode interface-builder

我有一个带有四个新标题,实现和接口文件的Tab Bar应用程序,并在IB中添加了这些作为源。他们采用以下格式:FirstView.h/m/xibSecondView.h/m/xib

然后我有第一,第二,第三和第四视图的文件。 还有一个名为FirstViewController的文件。我没有触及它,我只是将其删除,因为我不需要它。

然后我为IB中的第一个视图(FirstView.h/m/xib)布置了我的界面。它顶部有一个图像,标签下面有一个UITableView

我在FirstView.h/m文件中找到了正确的连接(tableview的委托和数据源),然后按下Build。它看起来没有错误,所以我按下了Build and Go。

模拟器弹出,安装了应用程序并崩溃了。 (错误消息:Terminating app due to uncaught exception)。

完整的错误消息:

2010-02-06 21:50:54.733 Mudo[52439:207] *** -[FirstViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x39101a0
2010-02-06 21:50:54.735 Mudo[52439:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[FirstViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x39101a0'
2010-02-06 21:50:54.736 Mudo[52439:207] Stack: (**LotsOfNumbers**)

我在另一个问题中询问了这一点,得到了答案,并修复了它:

显然在FirstViewController.h/m - 文件中寻找代码,虽然我没有做任何事情让它在那里查找代码。

我通过在FirstView.h / m文件中添加两个接口和实现来解决这个问题。 (FirstView和FirstViewController)

当我运行应用程序时,屏幕上出现了表格视图和标签栏,但我的图像和标签没有显示。 我不知道为什么它在FirstViewController中寻找代码而不是FirstView ...我在IB中也有正确的连接..

1 个答案:

答案 0 :(得分:1)

tableview正在尝试查询其数据源应显示的行数。如果您已将tableview的数据源插座连接到FirstViewController类的实例,则需要在该类中实现-tableView:numberOfRowsInSection: