我偶然發現了類似的答案,並瞭解到RxJava用於多個改造請求。我有3個選項卡的細節電影,電影評論和電影預告片。如何在不同的選項卡tablayout中進行多種改裝呼叫?
在評論選項卡中,我應該撥打電話獲取該電影的評論,並在預告片標籤中撥打電話獲取預告片。那麼在這種情況下,我應該使用rxjava進行多次調用還是可以進行改進?
我偶然發現了類似的答案,並瞭解到RxJava用於多個改造請求。我有3個選項卡的細節電影,電影評論和電影預告片。如何在不同的選項卡tablayout中進行多種改裝呼叫?
在評論選項卡中,我應該撥打電話獲取該電影的評論,並在預告片標籤中撥打電話獲取預告片。那麼在這種情況下,我應該使用rxjava進行多次調用還是可以進行改進?
您不必爲此使用Rxjava。你可以做財產以後這樣的:
// Get details
Call<ResponseBody> detailCall = apiInterface.getDetails();
detailCall .enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
});
// Get reviews
Call<ResponseBody> reviewCall= apiInterface.getReviews();
reviewCall.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
});
// Get trailers
Call<ResponseBody> trailerCall= apiInterface.getTrailer();
trailerCall.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
});
那麼,你的每個標籤都顯示了同一部電影的不同方面。考慮使用MVP模式,其中模型負責所有REST調用,並且包含該影片的不同細節,並且TabLayout具有片段。每個片段從MVP模式實現「視圖」。在ViewPager初始化期間,將所有視圖都附加到同一模型和演示者(請參閱https://github.com/google/iosched Google示例項目,例如,類MyScheduleActivity:https://github.com/google/iosched/blob/master/android/src/main/java/com/google/samples/apps/iosched/myschedule/MyScheduleActivity.java)
你可以使用'call.enque(新回撥<> {...})'然後跟單'onResponse's – Malik