接口

public interface ApiService {

    @FormUrlEncoded
    @POST("{url}")
    Observable doPost(@Path(value = "url",encoded = true) String url, @FieldMap Map map);

}
 
  
//retrofit2
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
//fresco加载图片
compile 'com.facebook.fresco:fresco:1.3.0'
//recyclerview   
 compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'
//rxjava
compile 'io.reactivex.rxjava2:rxjava:2.1.6'
//okhttp    
compile 'com.squareup.okhttp3:okhttp:3.9.0'
compile 'com.squareup.okio:okio:1.13.0'
//retrofit2adapter    
compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
compile 'io.reactivex.rxjava2:rxandroid:2.0.2'
    
//model层要实现
public interface BaseModel {
    void getDataFromNet(String url, Map map);
    void unsubcribe();
}
//P层要实现的接口

public interface PresenterInter {
    void onSuccess(ResponseBody responseBody);
    void onError(Throwable e);

    void getDataFromNet(String url, Map map);
    void unsubcribe();

}
//recyclerView点击事件
public interface OnItemListner {
    void onItemListener(View view,int position);
}

Activity用于销毁
 
  
 @Override
    protected void onDestroy() {
        super.onDestroy();
        mainpresenter.unsubcribe();//解除订阅
        if (mainpresenter.isViewAttached()) {//如果产生关联
            //解除关联
            mainpresenter.detachView();
        }
    }
Presenter调用销毁
 
  
public void detachView() {//解除关联
        if (mViewRef != null) {
            mViewRef.clear();
            mViewRef = null;
        }
    }


你可能感兴趣的:(最近一段时间的练习)