UISearchController 与 UITableView?
Posted
技术标签:
【中文标题】UISearchController 与 UITableView?【英文标题】:UISearchController with UITableView? 【发布时间】:2014-10-26 04:18:36 【问题描述】:我希望在包含 UITableView(不是 UITableViewController)的 ViewController 上创建一个 UISearchController。我有 2 个警告和一次崩溃,不确定它们是否相关 - 但我知道我的问题之一是警告
'Imcompatiable pointers types sending UITableView to parameter of type UIViewController.'
显然这是因为我试图在 UIViewController 上将 searchResultsController 设置为我的 tableView,而不是像这样的 UITableViewController:
self.searchController = [[UISearchController alloc] initWithSearchResultsController:self.myTableView];
self.myTableView 是 UITableView,我该如何解决这个问题?我是否必须将我的 tableView 变成 UITableViewController 才能让它正常工作?提前致谢。
【问题讨论】:
如果我理解你的设置,你应该传递 self,而不是 self.myTableView。 啊,对了,谢谢!现在由于某种原因,当我在搜索栏中单击时,我的视图控制器变黑(除了导航栏),并且出现此错误“尝试在initWithSearchResultsController 方法需要一个视图控制器。根据我的经验,它可以是 UIViewController 或 UITableViewController ,无论您想在哪里显示过滤(搜索)结果。
在您的情况下,我认为您正试图在包含您的 tableView 的同一视图控制器中显示过滤结果。因此,以下内容应该可以消除您遇到的错误-
self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
但是,您可能还必须将过滤表的数据源设置为 self。
【讨论】:
以上是关于UISearchController 与 UITableView?的主要内容,如果未能解决你的问题,请参考以下文章
UISearchController 与 UITableView?
将 UISegmentedControl 与 UISearchController 一起使用
为啥 iOS viewPager 与 UISearchController 崩溃?
将 UISearchController 与 UINavigationController 一起使用
UISearchController 不能与非半透明 UINavigationBar 一起正常工作
UISearchController:UITableView 的 Section Index 与 searchBar 重叠