updateSearchResultsForSearchController JSON

时间:2015-06-17 07:58:28

标签: json swift tableview uisearchbar uisearchcontroller

我尝试将搜索实现到我的tableview,我收到以下错误。 我将如何实现JSON数据?

var articleList: [JSON]? = []
var searchResults: [JSON]? = []

我的updateSearchResultsForSearchController函数:

func updateSearchResultsForSearchController(searchController: UISearchController) {
    self.searchResults?.removeAll(keepCapacity: false)

    let searchPredicate = NSPredicate(format: "SELF CONTAINS[c] %@", searchController.searchBar.text)

    let array = (articleList as NSArray).filteredArrayUsingPredicate(searchPredicate)
    searchResults = array as! [String]

    self.tableView.reloadData()
}

错误:' [JSON]?'不能兑换为NSArray'

...谢谢

1 个答案:

答案 0 :(得分:0)

从你的Swift数组中创建(而不是强制转换)一个新的NSArray:

let nsArticleList = NSArray(array: articleList!)

然后使用它:

let array = nsArticleList.filteredArrayUsingPredicate(searchPredicate)