【发布时间】:2018-02-24 15:56:51
【问题描述】:
我在 iOS 11 上将 UISearchController 附加到 UITableViewController 的 navigationItem.searchController 属性。这很好用:我可以使用漂亮的 iOS 11 风格的搜索栏。
但是,我想让搜索栏在启动时可见。默认情况下,用户必须在表格视图中向上滚动才能看到搜索栏。有谁知道这怎么可能?
左:启动后的默认情况。右:搜索栏可见(通过向上滚动)。我希望搜索栏在启动后可见,如右侧屏幕截图所示。
我已经发现可以通过将导航项的属性hidesSearchBarWhenScrolling 设置为false 来使搜索栏可见。但是,这会导致搜索栏始终可见——即使向下滚动也是如此——这不是我想要的。
【问题讨论】:
-
在你添加代码的地方
hidesSearchBarWhenScrolling -
设置成s
firstResponder怎么样? -
下面选择的答案在加载时适用于我,但我还想在使用
scrollView.setContentOffset(_:animated)以编程方式滚动到顶部时重新显示搜索控制器。有人有建议吗? -
@Jonathan
hidesSearchBarWhenScrolling = false在 iOS 13 中将搜索栏放在大标题上。知道我是否可以以某种方式更新它吗?
标签: ios uinavigationitem uisearchcontroller