December 2018
Intermediate to advanced
414 pages
10h 19m
English
The only piece of the protocol that isn't implemented is the var boundValue: BoundType member. As we're implementing on UITextField, BoundType will be String?, as it is the type of the string property:
extension UITextField: Bindable { var boundValue: String? { get { return self.text } set { self.text = newValue } }}
We can now use it all, with the following example:
let observable = Observable<String?>("Let's get started")var textField = UITextField(frame: .zero)textField.bind(observable)print("1. \(textField.text!)")observable.value = "Are you Ready?"print("2. \(textField.text!)")textField.text = "YES!"textField.sendActions(for: .valueChanged)print("3. \(observable.value!)")// Output:1. Let's get started // ...Read now
Unlock full access