如何将Action分配给订阅方法

时间:2017-10-02 19:43:09

标签: android rx-java rx-android

我正在尝试使用Just运算符,如下面的代码所示。如代码所示,我试图创建一个Action,然后将其传递给订阅方法 但我收到以下代码的错误:

        getJustOperator().subscribe(onNextAction);
        //Error message: cant resolve method

请让我知道如何正确创建动作。 我也发布了我正在使用的rx lib

进口

import io.reactivex.functions.Action;

Rx lib

compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'

Action onNextAction = new Action() {
        @Override
        public void run() throws Exception {
            Log.i(TAG, "Run: Just Operator");
        }
    };
    getJustOperator().subscribe(onNextAction);
}

private Observable<String> getJustOperator() {
    return Observable.just("Just Operator");
}

1 个答案:

答案 0 :(得分:0)

如果您想在onNext上使用subscribe-overload,请查看以下示例:

Observable.just("Wurst")
            .subscribe(new Consumer<String>() {
                @Override
                public void accept(String s) throws Exception {
                    Log.i("MYTAG", "Run: Just Operator");
                }
            });

您必须通过消费者。 onComplete和onError还有其他重载。只需查看docs

中的方法签名即可