Skip to content

Instantly share code, notes, and snippets.

@Bellaposa
Created June 6, 2020 13:50
Show Gist options
  • Save Bellaposa/4e434697899f38c2111b9db05e2445b7 to your computer and use it in GitHub Desktop.
Save Bellaposa/4e434697899f38c2111b9db05e2445b7 to your computer and use it in GitHub Desktop.
// Generate a random array of person
var persons = Person.generateRandomPerson()
override func viewDidLoad() {
super.viewDidLoad()
// create a custom Frame
let frame = CGRect(x: 150, y: 150, width: 200, height: 20)
// Pass model, frame and your custom CELL
let searchTextField = GenericSearchTextField(model: persons, frame: frame) { (person, cell) in
cell.textLabel?.text = person.name
}
// Set properties
searchTextField.placeholder = "Type Here"
// Set filter Operator ( in this case contains )
searchTextField.filterOperator = .contains
// Set property to Filter ( in this case name )
searchTextField.propertyToFilter = \.name
// Handler will return selected object in TableView
searchTextField.singleItemHandler = { [weak self] value in
print(value)
searchTextField.text = value.name
}
// Start filtering after 3 characters
searchTextField.minCharactersNumberToStartFiltering = 3
// Add searchTextField to Subview
self.view.addSubview(searchTextField)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment