如何确定UISearchDisplayController的searchResultsTableView是否可见?

She*_*lam 13 iphone cocoa-touch objective-c uitableview uisearchdisplaycontroller

我有一个UISearchDisplayController,它位于我的UITableView的headerview中.我想知道什么时候显示UISearchDisplayController的searchResultsTableView所以我可以做一些其他的操作:

if(self.tableView == self.searchDisplayController.searchResultsTableView)
Run Code Online (Sandbox Code Playgroud)

即使显示searchResultsTableView,也会一直返回true.我怎么能搞清楚这一点?

Mug*_*nth 36

这应该可以解决问题.

[self.searchDisplayController isActive]
Run Code Online (Sandbox Code Playgroud)

  • @chaiguy除了`searchDisplayController.isActive`之外,我还检查了`searchDisplayController.searchBar.text.length`.为什么不`searchDisplayController.searchResultsTableView.hidden == NO`?我不记得它是否有效,但另一个原因是访问者`searchResultsTableView`不必要地初始化表视图,即使用户不在搜索模式. (2认同)