我正在实现UISearchController作为iOS 11中导航项的一部分。这通常可以正常工作。但是我需要知道什么时候通过滚动自动显示或隐藏searchBar。 UISearchController或UISearchBar中的任何委托方法都不提供此信息。 UISearchController中的isActive属性仅在searchBar获得焦点(第一个响应者)时才为true。
我发现的唯一方法是在高度搜索栏框架上使用KVO,但这样的接缝相当极端。
与我的要求相关的还有以编程方式隐藏searchBar的能力(就像用户向上滚动一样)。我发现这样做的唯一方法是将导航项的UISearchController属性设置为nil,但这似乎也相当极端。
谢谢。