Advertisement
Guest User

Untitled

a guest
Jan 2nd, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. import RxSwift
  2.  
  3. // -- View Model
  4. struct LoginViewModel {
  5.  
  6. var username = Variable<String>("")
  7. var password = Variable<String>("")
  8.  
  9. var isValid : Observable<Bool>{
  10. return Observable.combineLatest( self.username, self.password)
  11. { (username, password) in
  12. return username.characters.count > 0
  13. && password.characters.count > 0
  14. }
  15. }
  16. }
  17.  
  18. // ----- View Controller
  19.  
  20. import RxSwift
  21. import RxCocoa
  22.  
  23. class LoginViewController {
  24. var usernameTextField: UITextField!
  25. var passwordTextField: UITextField!
  26. var confirmButton: UIBUtton!
  27.  
  28. var viewModel = LoginViewModel()
  29.  
  30. var disposeBag = DisposeBag()
  31.  
  32. override func viewDidLoad(){
  33. super.viewDidLoad()
  34. usernameTextField.rx.text.bindTo(viewModel.username).addTo(disposeBag) passwordTextField.rx.text.bindTo(viewModel.username).addTo(disposeBag)
  35.  
  36. //from the viewModel
  37. viewModel.rx.isValid.map{ $0 }
  38. .bindTo(confirmButton.rx.isEnabled)
  39. }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement