【问题标题】:Detect tap on "no displayed search results" in UISearchDisplayController在 UISearchDisplayController 中检测“没有显示的搜索结果”的点击
【发布时间】:2013-11-05 00:47:30
【问题描述】:

我有一个带有 UISearchBar 的标准 iOS UITableView。一切正常。我已经实现了一个方法,当用户通过实现searchBarCancelButtonClicked:(UISearchBar *)searchBar 委托方法点击取消按钮时隐藏搜索栏。这一切都很好。

但这是我的问题:

当用户点击搜索按钮并且没有搜索任何内容时,当他/她点击没有显示搜索结果的变暗空间时,不会调用任何委托方法。你知道我指的是哪个空间吗?将显示“无结果”或搜索结果的那个。当没有文本输入到搜索栏中时,这个变暗的空间是空的 - 并对用户的触摸做出反应(关闭搜索表视图)。

是否有与此触摸事件关联的委托方法?或者是否有解决方法来检测这种特定的触摸?

你可以在 GitHub 上查看我的代码:https://github.com/versluis/Table-Seach-2013

这里有一个截图来说明:

【问题讨论】:

    标签: ios objective-c uitableview uisearchbar uisearchdisplaycontroller


    【解决方案1】:
    - (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller
    

    【讨论】:

    • 我已经试过了。我的类符合 UISearchDisplayDelegate 协议,但从不调用该方法 - 即使搜索实际结束。
    • 它确实被调用了,确保你将自己设置为像 self.searchController.delegate = self 一样的委托。在 viewWillAppear 或其他东西中这样做
    【解决方案2】:
    -(void)willDismissSearchController:(UISearchController *)searchController
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-01
      相关资源
      最近更新 更多