按下搜索栏和搜索显示控制器时出错

时间:2014-08-01 18:27:16

标签: xcode5 searchbar

好的,所以我从一个标签控制器开始,它是一个旅行应用程序,但点击时无法输入搜索栏,因为此错误而崩溃,我检查了谷歌,没有出现任何内容。

[2014-08-01 11:08:49.371 challenger\[13968:60b\] -\[UIViewControllertableView:numberOfRowsInSection:\]: unrecognized selector sent to instance 0x8e3aee0
2014-08-01 11:08:49.417 challenger\[13968:60b\] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-\[UIViewController tableView:numberOfRowsInSection:\]: unrecognized selector sent to instance 0x8e3aee0']

1 个答案:

答案 0 :(得分:0)

这是因为UISearchDisplayController覆盖了它自己的表视图,因此它需要自己的数据源,具体取决于它显示的搜索结果。

在方法numberOfRowsInSection和numberOfSections中,测试显示哪个表视图,然后返回标准部分和行的数量,或者返回搜索显示控制器的数量。同样,当您返回表视图单元格时,请确保返回标准单元格或搜索结果单元格。如果section或cell为nil,则表视图将返回错误。

我在GitHub上有一个演示项目,展示了它的工作原理:https://github.com/versluis/TableSearch2014