小编aXX*_*XXy的帖子

范围按钮更改时如何更新搜索结果.Swift UISearchController

如何更改范围按钮(在点击范围后)更新搜索结果?当我再次输入时,搜索结果已更改(使用新范围)!

searchControl - config import UIKit

class ProductTableView: UIViewController, UITableViewDataSource, UITableViewDelegate, UISearchResultsUpdating
{

    @IBOutlet weak var tableView: UITableView!
    var searchController: UISearchController!

    var friendsArray = [FriendItem]()
    var filteredFriends = [FriendItem]()

    override func viewDidLoad()
    {
        super.viewDidLoad()

        searchController = UISearchController(searchResultsController: nil)
        searchController.searchBar.sizeToFit()
        searchController.searchResultsUpdater = self
        searchController.dimsBackgroundDuringPresentation = false
        searchController.searchBar.scopeButtonTitles = ["Title","SubTitle"]
        definesPresentationContext = true
        tableView.tableHeaderView = searchController.searchBar

        self.tableView.reloadData()


    }
Run Code Online (Sandbox Code Playgroud)

更新功能当我输入文本时,NSLog会打印我的文本和范围编号.当我改变范围 - 什么都没有!

func updateSearchResultsForSearchController(searchController: UISearchController) {
    let searchText = searchController.searchBar.text
    let scope = searchController.searchBar.selectedScopeButtonIndex
    NSLog("searchText - \(searchText)")
    NSLog("scope - \(scope)")
    filterContents(searchText, scope: scope) …
Run Code Online (Sandbox Code Playgroud)

scope swift uisearchcontroller

7
推荐指数
1
解决办法
4290
查看次数

标签 统计

scope ×1

swift ×1

uisearchcontroller ×1