OGeek|极客世界-中国程序员成长平台

标题: ios - UISearchViewController 在演示期间隐藏标签栏 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 16:42
标题: ios - UISearchViewController 在演示期间隐藏标签栏

我使用 UISearchViewController 来控制我的应用程序的搜索内容。我看到有一个名为 hidesNavigationBarDuringPresentation 的属性用于处理导航栏的可见性,但我想做的是在演示期间隐藏标签栏,我找不到任何属性来执行此操作。

有什么解决办法吗?



Best Answer-推荐答案


您是对的,没有用于显式显示和隐藏标签栏的属性,但您自己实现起来很容易:

  1. 让你的 View Controller (不是UISearchController)实现UISearchControllerDelegate
  2. 将您的 View Controller 分配给搜索 Controller 的 delegate 属性。
  3. 实现 willPresentSearchController()(或 didPresentSearchController())和 presentSearchController() 来隐藏你的标签栏。 (前者在搜索栏自动显示时调用;后者在您手动显示时调用。)
  4. 实现 willDismissSearchController()(或 didDismissSearchController)再次显示。

请注意,如果您的实现只是简单地切换搜索栏的 hidden 属性,那么该栏将不会以动画方式进出;你必须自己制作动画。

您的实现检查 hidesNavigationBarDuringPresentation 的值可能是个好主意,以便仅当导航栏显示和隐藏标签栏时。

关于ios - UISearchViewController 在演示期间隐藏标签栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33199075/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4