MVP基类

来源:互联网 发布:宝宝学画画软件 编辑:程序博客网 时间:2024/06/05 02:06
public class httputils {    public static <T> void GetDataFormService(String url, final CallBackToPresenter callBackToPresenter, final Class<T> t) {        RequestParams params = new RequestParams();        params.setUri(url);        x.http().get(params, new Callback.CommonCallback<String>() {            @Override            public void onSuccess(String result) {                Gson gson = new Gson();                T t1 = gson.fromJson(result, t);                callBackToPresenter.ToPresenter(t1);            }            @Override            public void onError(Throwable ex, boolean isOnCallback) {                Log.e("Error", "onError: " + ex.getMessage());            }            @Override            public void onCancelled(CancelledException cex) {            }            @Override            public void onFinished() {            }        });    }    public interface CallBackToPresenter<T> {        void ToPresenter(T t);    }

}

//

public class BasePresenter<T extends IMvpView> {    private T t;    public void SetAttachView(T t) {        this.t = t;    }    public T getView() {        return t;    }}


public <T> void getDataToFrag1View(final Class<T> t) {    httputils.GetDataFormService(adress, new httputils.CallBackToPresenter<T>() {        @Override        public void ToPresenter(T t1) {            getView().CallBack(t1);        }    }, t);}



//

HomePresenter presenter = new HomePresenter();presenter.SetAttachView(this);presenter.getDataToView(HomeBean.class);


原创粉丝点击