package com.example.zsd.myapplication0316.presenter;
import com.example.zsd.myapplication0316.MainActivity;
import com.example.zsd.myapplication0316.bean.Json;
import com.example.zsd.myapplication0316.model.SelectModel;
import com.example.zsd.myapplication0316.mvp.MVP;
import java.lang.ref.WeakReference;
public class SelectPresenter implements MVP.SelectPresneterable {
WeakReference<MVP.SelectViewable> selectViewableWeakHashMap ;
SelectModel selectModel ;
public SelectPresenter(MVP.SelectViewable selectViewable) {
datch((MainActivity) selectViewable);
selectModel = new SelectModel();
}
@Override
public void get() {
selectModel.get(new MVP.SelectModelable() {
@Override
public void SelectSucces(Json json) {
selectViewableWeakHashMap.get().SelectSucces(json);
}
@Override
public void SelectErrors(String s) {
selectViewableWeakHashMap.get().SelectErrors(s);
}
});
}
//把弱引用和v层链接链接
public void datch(MainActivity view){
selectViewableWeakHashMap = new WeakReference(view);
}
//防止内存泄漏
public void deBind(){
selectViewableWeakHashMap.clear();
}
}