使用ios 8 UISearchController单击搜索栏时如何隐藏部分标题?

Posted

技术标签:

【中文标题】使用ios 8 UISearchController单击搜索栏时如何隐藏部分标题?【英文标题】:how to hide the section title when clicked search bar using ios 8 UISearchController? 【发布时间】:2015-06-07 01:06:55 【问题描述】:

这是上一个屏幕。

然后,我点击了搜索栏:

代码如下: // MARK: - searchController

func initSearchController() 
    self.resultSearchController = (
        let controller = UISearchController(searchResultsController: nil)
        controller.searchResultsUpdater = self
        controller.dimsBackgroundDuringPresentation = false
        controller.searchBar.sizeToFit()
        controller.searchBar.backgroundColor = UIColor.clearColor()

        self.tableView.tableHeaderView = controller.searchBar
        return controller
    )()

请帮助我。谢谢。

【问题讨论】:

【参考方案1】:

将section的标题设置为nil,如果该section中没有行,这将隐藏section标题

// Set the title of the section header, return nil if no rows in that section
func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? 
    if self.tableView(tableView, numberOfRowsInSection: section) == 0 
        return nil
     else 
        return "section title \(section)"
    

这将起作用,假设 tableView(tableView: UITableView, numberOfRowsInSection section: Int) 被正确实施以反映基于搜索结果的部分数量。

如果您想在搜索栏处于活动状态时完全删除部分标题,则只需添加此

func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? 
    if self.resultSearchController.active 
        return nil
     else 
        return "section title \(section)"
    

【讨论】:

谢谢,这将隐藏部分标题。 如果问题解决了,请采纳。

以上是关于使用ios 8 UISearchController单击搜索栏时如何隐藏部分标题?的主要内容,如果未能解决你的问题,请参考以下文章

iOS 8 Photos 框架:使用 iOS8 获取所有相册的列表

iOS 7教程学习iOS 8?

iOS 8 使用外部 GPS

无法在 iOS 8 上使用 Google 登录 iOS SDK

iOS 7 和 iOS 8 中的警报视图与 UIAlertController

苹果iOS 8怎么使用AirDrop共享文件教程