【问题标题】:UISearchController's UISearchBar not extending to status barUISearchController 的 UISearchBar 没有扩展到状态栏
【发布时间】:2016-04-28 00:22:28
【问题描述】:

我正在尝试在我当前的项目中实现 UISearchController,我正在努力将其 UISearchBar 正确定位在我的 ViewController 上。

在我的 ViewController 上,我有一个 UIView,它用作 searchControllers searchBar 的容器视图。创建 searchController 后,我将其 searchBar 添加为 ViewControllers 容器视图的子视图。 ViewController 也嵌入在 NavigationController 中,其 Navbars 颜色为红色。

我遇到的问题是,当我激活搜索控制器时,通过关注 searchBar,动画发生后将导航栏推离屏幕,并将搜索栏修复到导航栏曾经所在的位置,背景searchBar 没有延伸到覆盖状态栏。

View Controllers 视图顶部的深灰色条是 UISearchController 附带的暗淡视图和红色导航栏曾经所在的白色背景的混合。

如果您对此问题有任何见解或需要更多信息,请告诉我。

【问题讨论】:

    标签: ios uisearchbar uisearchcontroller


    【解决方案1】:

    如果您将 viewController 嵌入到 UINavigationBarCONtroller 或 UITabBarViewControoler 中,则内容默认显示在状态栏下。我认为您应该在推开导航栏后将 SearchBar 固定到 UIView 的边缘,而不是导航栏曾经所在的位置。

    但是,这可能仍然不适合您。然后您需要在顶部的 Anchor 中添加一个常量,以使 SearchBar 稍微延伸以覆盖状态栏。我在我的 StoryBoard 中进行了尝试,它成功了,我相信如果你愿意,以编程方式实现它并不难。

    这里我把SearchBar的约束,Top Space设置为:Top Layout Equals -20,常量很重要

    【讨论】:

    • 嘿@luiyezheng,当你这样做时,searchBar不会滑过状态栏吗?
    • @Lasonic 我添加截图显示,如果添加常量,searchBar 如下图所示
    猜你喜欢
    • 1970-01-01
    • 2013-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多