RxSwiftのbindでテキストフィールドと変数の値を直結させる
RxSwiftのbindを使えばテキストフィールドの値を変更したタイミングで変数を書き換える処理を簡単に実装することができます。
//TestViewController.swift側 @IBOutlet var testTextField : UITextField! let model = TestModel() let disposeBag = DisposeBag() func viewDidLoad{ testTextField.rx.text.orEmpty .bind(to: model.testText) .disposed(by: disposeBag) }
上記ソースではRxSwiftとRxCocoaのimportも記述してください。orEmptyを入れることで空文字とnilはオブザーブしません。disposeBagは自動的に解放するために格納しておきます。
//TestModel.swift側 let testText = Variable<String>("")
このようにModel側で変数を定義してViewControllerでbindします。