3

感谢您阅读我的问题。我有一个有趣的问题,我无法弄清楚,希望社区能够提供帮助。我有一个UITableViewController(LibraryViewController)UISearchDisplayController作为变量。我还有另外两个对象。首先,它的一个子类NSObject定义了我的数据对象(两个NSString对象),称为 LibraryDataObject。第二个,它的子类NSObject有两个NSMutableArray对象并实现了UITableViewDataSource名为 LibraryDataModel 的协议。

LibraryViewController 还拥有一个名为 libraryDataSource 的 LibraryDataModel 实例。它已正确初始化。此外,LibraryViewController 和 的委托UISearchDisplayController都设置为 LibraryDataModel。未搜索的视图正确填充。而且,当我搜索时,列表会根据搜索词填充正确的项目。该代码基于 TableSearch 文档代码。

这是我的问题变得明显的地方。搜索时,表格将缩小为搜索框中的术语。但是,当我滚动表格并超出搜索词的范围时,它开始tableView:cellForRowAtIndexPath:与 base 的 tableview 进行消息传递UITableViewController

以前有没有人遇到过这种特殊情况?谢谢你。

4

1 回答 1

0

我向苹果公司开了一个案子,他们帮助了我。这种行为不是我想要的,但它解释了这个问题。我通过使用 [self.parentViewController.view addSubview:searchBar] 将其推入堆栈来添加搜索栏;但是,我应该使用 self.tableView.tableHeaderView = searchBar; 添加搜索栏 这个问题消失了,但是搜索栏位于 tableview 的顶部,而不是视图上的静态。看看能不能改。

于 2013-01-12T04:07:06.913 回答