ios - UISearchController 与 UITableView?

标签 ios objective-c iphone uitableview uisearchcontroller

我希望在包含 UITableView(而非 UITableViewController)的 ViewController 上创建一个 UISearchController。我有 2 条警告和一次崩溃,不确定它们是否相关 - 但我知道我的问题之一是警告

'Imcompatiable pointers types sending UITableView to parameter of type UIViewController.'

很明显,这是因为我正在尝试将 searchResultsController 设置为我的 UIViewController 上的 tableView,而不是像这样的 UITableViewController:

   self.searchController = [[UISearchController alloc] initWithSearchResultsController:self.myTableView];

self.myTableView 是 UITableView,我该如何解决这个问题?我是否必须将我的 tableView 变成 UITableViewController 才能使其正常工作?提前致谢。

最佳答案

initWithSearchResultsController 方法需要一个 View Controller 。以我的经验,它可以是 UIViewController 或 UITableViewController,无论您想要显示过滤(搜索)结果。

我认为,在您的情况下,您正试图在包含 tableView 的同一 View Controller 中显示过滤后的结果。因此,以下应该消除您遇到的错误-

self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];

但是,您可能还必须将过滤表的数据源设置为 self。

关于ios - UISearchController 与 UITableView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26569756/

相关文章:

iphone - ios UIActivityViewController不附加发送短信的图像

iphone - 如何修改UIDatePicker的内容?

ios - 命令行 C 程序到 Swift

ios - "iPhone 5.5-inch"的模拟指标大小无法在 iPhone 6 plus 设备中正确显示界面

ios - JSON 和 Alamofire 请求的问题

ios - Objective-C - SOAP 请求返回 WSDL 作为响应而不是正确的响应

iphone - 将静态字典数据添加到我的静态数组中

iOS - 了解应用商店国家

objective-c - 用于大图像的 CIFilter inputIntensity slider

objective-c - 在文本区域/输入 UIWebview 中禁用长按菜单