2017-04-20 7 views
0

私は7つのフィールドを確認してから電話をかけなければなりません。各検証は、文字列がルールと一致しない場合にエラーをスローする単一観察可能です。 onErrorの方法では、エラーメッセージとそのメッセージのテキストを表示するためにwhitchフィールドを管理します。問題は、zipのようにすべてのフィールドをチェックする方法を知らないということです。たとえば、エラーのうちのいくつかがスローされたときに別のオブザーバブルを停止したり、残りの呼び出しを防ぐために少なくとも1つのエラーがあるかどうかを確認します。Android RxJava2複数のEditTextの有効化

+0

いくつかのコードを追加できますか? – GVillani82

+0

残念ながら、いいえ。私はできるだけ明確な問題を記述しようとしています。 – Near1999

答えて

0

onErrorReturn()演算子を使用すると、エラーが発生したときに特定のアイテムが返されます。

例えば、2つのオブザーバブルがあり、最初のものが失敗し、2番目のものがそうでない場合、ログメッセージが出力されます。

Observable.zip(Observable.error(new Throwable()) 
         .onErrorReturn(throwable -> Result.fail()), 
       Observable.just(new Result("body")), 
       (BiFunction<Object, Result, Object>) (o, result) -> result) 
       .subscribe(o -> Log.d("test","both observables completed.")); 
関連する問題