更新视图-响应式扩展



我有以下代码:

Observable.Interval (TimeSpan.FromMilliseconds (2500) .SubscribeOn (XXX) .ObserveOn(多).Subscribe (t => SendCounter(t),e => HandleException(e));

其中XXX, YYY为Schedulers

在SendCounter(t)中,我设置了一个值为t的文本。

问题是,当我运行代码时,我得到了这个错误:
'only the original thread that created a view hierarchy can touch its views'

我使用这个组件:https://components.xamarin.com/view/rxforxamarin

var uiThread = SynchronizationContext.Current;
Observable
    .Interval(TimeSpan.FromMilliseconds(2500))
    .SubscribeOn(XXX)
    .ObserveOn(uiThread)
    .Subscribe( t => SendCounter(t), e => HandleException(e));

确保你在主线程上观察,这样你就可以直接影响视图

如果你正在使用ReactiveUI使用你的代码像这样,例如:

searchButton
.SelectMany(async x => await executeSearch(x))
.ObserveOn(RxApp.MainThreadScheduler)
.ToProperty(this, x => x.SearchResults, out searchResults);

ReactiveUI手册

相关内容

  • 没有找到相关文章

最新更新