给定
Java对象上的任意字段,我想创建一个Observable,它将监视该字段并在每次字段值更改时将新结果推送到Observer. ReactiveCocoa有一个名为RACObserve的宏,它似乎就是这样做的.
我想知道如何使用RxJava实现类似的功能.
例如,假设我有以下简单类:
public class Foo { enum State { Idle,Ready,Error } private State currentState = State.Idle; //methods that can change currentState }
我想创建一个Observable< State>每次更改currentState的值时,都会将新状态推送到Observer.
在ReactiveCocoa中,看起来我会写下类似的东西(请原谅我的伪Objective-C):
[RACObserve(self,currentState) subscribeNext:^(Nsstring *newState) { NSLog(@"%@",newState); }];
我如何在RxJava中实现类似的功能?我想我可能需要在setter中包含对currentState的所有更改,但是我不清楚我应该在哪里调用Observable.create以及如何将currentState的更改提供给Observer.
ReactiveCocoa实际上与ReactiveUI(
http://www.reactiveui.net)更相似,而不仅仅是普通的Rx.在ReactiveUI中,您可以使用this.WhenAnyValue(x => x.PropName)来完成您想要的操作.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。