0
我改變我的2列...如何搜索結構(SWIFT)
var title = ["Title 1", "Title 2", "Title 3"]
var artist = ["Artist 1", "Artist 2", "Artist 3"]
...一個struct
struct Song {
var title: String
var artist: String
}
var songs: [Song] = [
Song(title: "Title 1", artist "Artist 1"),
Song(title: "Title 2", artist "Artist 2"),
Song(title: "Title 3", artist "Artist 3"),
]
設置我UITableView
,這樣的標題單元格等於songs[indexPath.row].title
,並且單元格的字幕等於songs[indexPath.row].artist
。我想用UISearchBar
來搜索UITableView
。每當我只有變量而不是結構時,它運行良好。但是,現在我對
var filteredTitles:[String] = []
var searchActive : Bool = false
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
filteredTitles = title.filter //the error ({ (text) -> Bool in
let tmp: NSString = text as NSString
let range = tmp.range(of: searchText, options: NSString.CompareOptions.caseInsensitive)
return range.location != NSNotFound
})
if(filteredTitles.count == 0){
searchActive = false;
} else {
searchActive = true;
}
self.myTableView.reloadData()
}
發現錯誤正如你所看到的,就行了filteredTitles = title.filter
它調用我的老變量,title
。我應該怎樣替換這一行,以便它搜索結構的標題?
感謝您的幫助!