【发布时间】:2018-07-03 12:02:50
【问题描述】:
我是响应式编程的新手,也是使用 ReactiveUI 的新手 所以我需要一点帮助。
我正在做一个项目,我们正在使用 Xamarin-iOS for iOS 平台。
我有一个简单的 Login ViewController,我想在 TextField 状态发生变化时立即启用按钮。
我有那些字段。
private string user;
private string password;
private ReactiveCommand<Unit,bool> loginCommand;
private ReactiveCommand<Unit,Unit> canselCommand;
我正在使用 this.WhenAnyValue 方法
var canLogin = this.WhenAnyValue(x => x.user, x => x.password, (userName, password) =>
!string.IsNullOrWhiteSpace(userName) && !string.IsNullOrWhiteSpace(password));
this.loginCommand = ReactiveCommand.CreateFromObservable(
() =>
Observable
.Return(this.passwordTextField.Text == "Tornike"))
.Delay(TimeSpan.FromSeconds(1.5))
.TakeUntil(this.canselCommand);
其中用户和密码是私有字符串字段。 而且我在 UI 上有 passwordTextField 和 userNameTextField UILabels。
到处都是红线错误,我有点害怕。
那么当 textFields 发生变化时,我如何才能启用按钮呢? 谢谢。
【问题讨论】:
标签: c# xamarin xamarin.ios reactive-programming reactiveui