M
public class MyModel {
public void getData(final IModel iModel){
Map<String, String> map = new HashMap<>();
OkhttpUtils.getInstance().asy(null, "http://120.27.23.105/ad/getAd", new AbstractUiCallBack<Bean>() {
@Override
public void success(Bean bean) {
iModel.succes(bean);
}
@Override
public void failure(Exception e) {
iModel.failure(e);
}
});
}
public interface IModel{
public void succes(Bean bean);
public void failure(Exception e);
}
}
V
public class MainActivity extends AppCompatActivity implements MyView{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MyPresenter presenter = new MyPresenter(this);
presenter.get();
}
@Override
public void succes(Bean bean) {
bean.getData();
}
@Override
public void failure(Exception e) {
}
}
public class MyPresenter { MyView view; private final MyModel model; public MyPresenter(MyView view) { this.view = view; model = new MyModel(); } public void get(){ model.getData(new MyModel.IModel() { @Override public void succes(Bean bean) { view.succes(bean); } @Override public void failure(Exception e) { view.failure(e); } }); } }