1.接口
public interface Api {
//搜索历史记录
@GET(“small/commodity/v1/findCommodityByKeyword”)
Observable getCall(@Query(“keyword”) String keyword, @Query(“page”) int page, @Query(“count”) int count);
//http://172.17.8.100/ks/product/getCarts?uid=51
@GET("ks/product/getCarts")
Observable<ShopcartBean> getCallg(@Query("uid") int uid);
}
2.
搜索Bean类
购物车Bean类
3.Fresco图片缓存路径
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
//Fresco的初始化
//磁盘缓存的配置
DiskCacheConfig diskCacheConfig = DiskCacheConfig.newBuilder(this)
.setBaseDirectoryPath(getCacheDir())
.setMaxCacheSize(810241024)
.build();
//把磁盘缓存的设置,设置到三级缓存中
ImagePipelineConfig pipelineConfig = ImagePipelineConfig.newBuilder(this)
.setMainDiskCacheConfig(diskCacheConfig)
.build();
Fresco.initialize(this,pipelineConfig);
}
}
4.p层
搜索商品
public class Presentersearch extends Basepresenter {
private HttpUtils okHttpUtil;
public void loadDate(String keyword,int page,int count){
okHttpUtil = HttpUtils.getInstance();
Observable call = okHttpUtil.api.getCall(keyword, page, count);
call.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(SearchBean li) {
MainView view = (MainView) getView();
view.Pm(li);
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}});
}
}
购物车presenter
public class Presentershop extends Basepresenter {
private HttpUtils okHttpUtil;
public void loadDate(int uid){
okHttpUtil = HttpUtils.getInstance();
Observable call = okHttpUtil.api.getCallg(uid);
call.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(ShopcartBean li) {
ShopView view = (ShopView) getView();
view.Pm(li);
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}});
}
}
5.购物车的主页面
public class CartActivity extends AppCompatActivity implements ShopView {
private Presentershop presenterG;
@BindView(R.id.expandable)
ExpandableListView expandableListView;
@BindView(R.id.select_all)
CheckBox checkAll;
@BindView(R.id.price_all)
TextView price_All;
private Unbinder unbinder;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gou);
unbinder = ButterKnife.bind(this);
presenterG = new Presentershop();
presenterG.setView(this);
presenterG.loadDate(51);
}
@Override
public void Pm(Object o) {
ShopcartBean gou = (ShopcartBean) o;
gou.getData().remove(0);
List<ShopcartBean.DataBean> list = gou.getData();
ShopCartAdapter adapter = new ShopCartAdapter(CartActivity.this,list,checkAll,price_All);
expandableListView.setAdapter(adapter);
}
@Override
public void onDestroy() {
super.onDestroy();
presenterG.detachView();
unbinder.unbind();
}
}