i have textfield represents tableview inputview. want add 2 things tableview.
1) add search bar.
2) add cancell button top of tableview.
class enteryourdealvc: uiviewcontroller, uitableviewdatasource, uitableviewdelegate, uisearchbardelegate, uisearchdisplaydelegate, uisearchresultsupdating { var tableview: uitableview = uitableview() let searchcontroller = uisearchcontroller(searchresultscontroller: nil) var dealairports = [ airports(name: "airport1", shortcut: "ap1")!), airports(name: "airport2", shortcut: "ap2")!) ] var filteredairports = [airports]() //view did load tableview = uitableview(frame: uiscreen.mainscreen().bounds, style: uitableviewstyle.plain) tableview.delegate = self tableview.datasource = self tableview.registerclass(uitableviewcell.self, forcellreuseidentifier: "cell") searchcontroller.searchresultsupdater = self searchcontroller.dimsbackgroundduringpresentation = false definespresentationcontext = true tableview.tableheaderview = searchcontroller.searchbar totextfield.inputview = self.tableview //here search function func filtercontentforsearchtext(searchtext: string, scope: string = "all") { filteredairports = dealairports.filter { ap in return ap.name.lowercasestring.containsstring(searchtext.lowercasestring) } tableview.reloaddata() } }
the problem code, doesn't search. when click search bar dismiss tableview , returns me viewcontroller. how can fix this?
and how can add cancel button tableview?
this add seachbar
lazy var searchbar:uisearchbar = uisearchbar() override func viewdidload() { searchbar.searchbarstyle = uisearchbarstyle.prominent searchbar.placeholder = " search..." searchbar.sizetofit() searchbar.translucent = false searchbar.backgroundimage = uiimage() searchbar.delegate = self navigationitem.titleview = searchbar } func searchbar(searchbar: uisearchbar, textdidchange textsearched: string) { ...your code... }
Comments
Post a Comment