p层调用:
//九宫格(分类)
void ShowgroHomeToView(ShopCar shopCar, IgroHomeView igroHomeView);
void ShowgroHomes(List<GroupBean.DataBean> list);
//分类子接口
void ShowGroChildToView(ShopCar shopCar, IGroChildView iGroChildView,int position);
void ShowGroChildDatas(List<GroChildBean.DataBean> list);
----------
//分类
@Override
public void ShowgroHomeToView(ShopCar shopCar, IgroHomeView igroHomeView) {
this.igroHomeView = igroHomeView;
Map<String,String> map = new HashMap<> ();
map.put ("token","android");
shopCar.groHome (map);
}
@Override
public void ShowgroHomes(List<GroupBean.DataBean> list) {
Log.d (TAG, "ShowgroHomes(九宫格): "+list.size ());
igroHomeView.ShowgroHomeViews (list);
}
//子分类
@Override
public void ShowGroChildToView(ShopCar shopCar, IGroChildView iGroChildView,int position) {
this.iGroChildView = iGroChildView;
Map<String,String> map = new HashMap<> ();
map.put ("cid",iGroChildView.getCid ()+"");
shopCar.groChildGroup (map);
}
@Override
public void ShowGroChildDatas(List<GroChildBean.DataBean> list) {
Log.d (TAG, "ShowGroChildDatas:(右) "+list.size ());
iGroChildView.ShowGroChildToViews (list);
}
在activity中进行调用:
public class GroupFragment extends Fragment implements IgroHomeView,IGroChildView{
private static final String TAG = "GroupFragment---";
private RecyclerView left_group;
private RecyclerView right_group;
private static List<GroChildBean.DataBean> list;
private ShowShop showShop;
private int cid = 1 ;
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = View.inflate (getActivity (), R.layout.fragment_group, null);
left_group = view.findViewById (R.id.left_group);
right_group = view.findViewById (R.id.right_group);
showShop = new ShowShop ();
showShop.ShowgroHomeToView (new ShopGoods (showShop),this);
showShop.ShowGroChildToView (new ShopGoods (showShop),GroupFragment.this,cid);
return view;
}
@Override
public void ShowGroChildToViews(List<GroChildBean.DataBean> list) {
Log.d (TAG, "ShowGroChildToView:(right) "+list.size ());
right_group.setLayoutManager (new LinearLayoutManager (getActivity (), OrientationHelper.VERTICAL,false));
ProductAdapter productAdapter = new ProductAdapter (getActivity (), list);
right_group.setAdapter (productAdapter);
}
@Override
public void ShowgroHomeViews(final List<GroupBean.DataBean> list) {
Log.d (TAG, "ShowgroHomeViews:(left) "+list.size ());
left_group.setLayoutManager (new LinearLayoutManager (getActivity (),LinearLayoutManager.VERTICAL,false));
CatagoryAdapter catagoryAdapter = new CatagoryAdapter (getActivity (), list);
catagoryAdapter.setOnItemClickListener (new CatagoryAdapter.OnItemClickListener () {
@Override
public void onClickChild(int position) {
cid = list.get (position).getCid ();
showShop.ShowGroChildToView (new ShopGoods (showShop),GroupFragment.this,cid);
Toast.makeText(getActivity (), "cid:" + GroupFragment.this.cid, Toast.LENGTH_SHORT).show();
}
});
left_group.setAdapter (catagoryAdapter);
}
@Override
public int getCid() {
return cid;
}
}