我有一個改造請求,當我在onResponse中獲取數據時, 我在上面的代碼中稱爲繁重工作的文本視圖中插入了倍數,我從OnReponse得到結果,否則我會從數據庫中得到結果,所以問題是我在OnResponse和OnFailure中有相同的代碼,所以有任何方法可以將我繁重的工作放在改進之外,並等待響應只從OnResponse或OnFailure獲得一個結果?當數據準備就緒時,從改造的警報Mainthread
call.enqueue(new Callback<Dashboard>() {
@Override
public void onResponse(Call<Dashboard> call, Response<Dashboard> response) {
realm.beginTransaction();
dashboard = realm.copyToRealmOrUpdate(response.body());
realm.commitTransaction();
// heavy work : insert in data in multiple text views
}
@Override
public void onFailure(Call<Dashboard> call, Throwable t) {
Log.e("error ", "" + t.getMessage());
dashboard = realm.where(Dashboard.class).findFirst();
// heavy work : insert in data in multiple text views
}
}
謝謝,我會測試它,它看起來很邏輯! – stanly