mirror of
https://github.com/WuXiaolong/AndroidMVPSample.git
synced 2025-06-06 13:24:03 +08:00
update
This commit is contained in:
parent
ff33498468
commit
d33c9bc192
@ -27,10 +27,11 @@ public class MainPresenter extends BasePresenter<MainView> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(int code, String msg) {
|
||||
public void onFailure(String msg) {
|
||||
mvpView.getDataFail(msg);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onFinish() {
|
||||
mvpView.hideLoading();
|
||||
|
@ -14,6 +14,7 @@ public interface MainView {
|
||||
|
||||
void getDataFail(String msg);
|
||||
|
||||
|
||||
void showLoading();
|
||||
|
||||
void hideLoading();
|
||||
|
@ -18,7 +18,7 @@ public abstract class ApiCallback<M> extends Subscriber<M> {
|
||||
|
||||
public abstract void onSuccess(M model);
|
||||
|
||||
public abstract void onFailure(int code, String msg);
|
||||
public abstract void onFailure(String msg);
|
||||
|
||||
public abstract void onFinish();
|
||||
|
||||
@ -38,9 +38,9 @@ public abstract class ApiCallback<M> extends Subscriber<M> {
|
||||
if (code == 502 || code == 404) {
|
||||
msg = "服务器异常,请稍后再试";
|
||||
}
|
||||
onFailure(code, msg);
|
||||
onFailure(msg);
|
||||
} else {
|
||||
onFailure(0, e.getMessage());
|
||||
onFailure(e.getMessage());
|
||||
}
|
||||
onFinish();
|
||||
}
|
||||
|
@ -0,0 +1,41 @@
|
||||
package com.wuxiaolong.androidmvpsample.retrofit;
|
||||
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
|
||||
/**
|
||||
* Created by WuXiaolong
|
||||
* on 2016/9/22.
|
||||
* github:https://github.com/WuXiaolong/
|
||||
* weibo:http://weibo.com/u/2175011601
|
||||
* 微信公众号:吴小龙同学
|
||||
* 个人博客:http://wuxiaolong.me/
|
||||
*/
|
||||
|
||||
public abstract class RetrofitCallback<M> implements Callback<M> {
|
||||
|
||||
public abstract void onSuccess(M model);
|
||||
|
||||
public abstract void onFailure(int code, String msg);
|
||||
|
||||
public abstract void onThrowable(Throwable t);
|
||||
|
||||
public abstract void onFinish();
|
||||
|
||||
@Override
|
||||
public void onResponse(Call<M> call, Response<M> response) {
|
||||
if (response.isSuccessful()) {
|
||||
onSuccess(response.body());
|
||||
} else {
|
||||
onFailure(response.code(), response.errorBody().toString());
|
||||
}
|
||||
onFinish();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<M> call, Throwable t) {
|
||||
onThrowable(t);
|
||||
onFinish();
|
||||
}
|
||||
}
|
@ -10,13 +10,12 @@ import com.wuxiaolong.androidmvpsample.mvp.main.MainPresenter;
|
||||
import com.wuxiaolong.androidmvpsample.mvp.main.MainView;
|
||||
import com.wuxiaolong.androidmvpsample.mvp.other.MvpActivity;
|
||||
import com.wuxiaolong.androidmvpsample.retrofit.ApiCallback;
|
||||
import com.wuxiaolong.androidmvpsample.retrofit.RetrofitCallback;
|
||||
|
||||
import butterknife.Bind;
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.OnClick;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
|
||||
/**
|
||||
* 由Activity/Fragment实现View里方法,包含一个Presenter的引用
|
||||
@ -59,6 +58,7 @@ public class MainActivity extends MvpActivity<MainPresenter> implements MainView
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void showLoading() {
|
||||
showProgressDialog();
|
||||
@ -89,16 +89,24 @@ public class MainActivity extends MvpActivity<MainPresenter> implements MainView
|
||||
private void loadDataByRetrofit() {
|
||||
showProgressDialog();
|
||||
Call<MainModel> call = apiStores.loadDataByRetrofit("101190201");
|
||||
call.enqueue(new Callback<MainModel>() {
|
||||
call.enqueue(new RetrofitCallback<MainModel>() {
|
||||
@Override
|
||||
public void onResponse(Call<MainModel> call, Response<MainModel> response) {
|
||||
dataSuccess(response.body());
|
||||
dismissProgressDialog();
|
||||
public void onSuccess(MainModel model) {
|
||||
dataSuccess(model);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<MainModel> call, Throwable t) {
|
||||
public void onFailure(int code, String msg) {
|
||||
toastShow(msg);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onThrowable(Throwable t) {
|
||||
toastShow(t.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFinish() {
|
||||
dismissProgressDialog();
|
||||
}
|
||||
});
|
||||
@ -116,7 +124,7 @@ public class MainActivity extends MvpActivity<MainPresenter> implements MainView
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(int code, String msg) {
|
||||
public void onFailure(String msg) {
|
||||
toastShow(msg);
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user