无法使用可观察的方法解析方法handleResponse

时间:2019-03-15 22:00:42

标签: java methods compiler-errors observable

我有一个函数loadProfile()

private void loadProfile() {
        mSubscriptions.add(RetrofitClient.getRetrofit(mToken).getProfile(mEmail)
                .observeOn(AndroidSchedulers.mainThread())
                .subscribeOn(Schedulers.io())
                .subscribe(this::handleResponse,this::handleError));
}

会调用handleResponse

private void handleResponse(Response response, User user) {
     //some code
}

在我的handleResponse类中定义了Api,如下所示:

@GET("Users/{id}")
Observable<retrofit2.Response<User>> getProfile(@Path("id") String id);

我在cannot resolve method handleResponse中得到loadProfile() 我检查了许多类似问题所建议的参数类型,但找不到问题。我希望我提供了发现问题所需的一切。

1 个答案:

答案 0 :(得分:1)

由于您的退货类型为Observable<Response<User>>

我认为您的方法应该是

    private void handleResponse(Response<User> response) {
        if (response.isSuccessful()) {
            User user = response.body()
        } else {
            // some code
        }
    }