分类的详细
来源:互联网 发布:中经网数据库怎么注册 编辑:程序博客网 时间:2024/06/06 06:38
public interface Fview { void getData(List_left bean); void getData1(List_right bean);}
public interface Fmodel { void fenlei(); void fenlei11(); void fenlei1(int pid);}-----------------------
public class FUsermodel implements Fmodel{ // 定义接口变量 private OnFinishLisenter lisenter; private OnFinishLisenter1 lisenter1; //定义接口 public interface OnFinishLisenter{ void onFinish(List_left list_left); } public interface OnFinishLisenter1{ void onFinish1(List_right list_right); } public void setOnFinishLisenter1(OnFinishLisenter1 lisenter1){ this.lisenter1 = lisenter1; } public void setOnFinishLisenter(OnFinishLisenter lisenter){ this.lisenter = lisenter; } @Override public void fenlei() { OkHttp3Utils.doGet("http://120.27.23.105/product/getCatagory", new GsonObjectCallback<List_left>() { @Override public void onUi(List_left list_left) { if(lisenter!=null){ lisenter.onFinish(list_left); } } @Override public void onFailed(Call call, IOException e) { } }); } @Override public void fenlei11() { OkHttp3Utils.doGet("http://120.27.23.105/product/getProductCatagory", new GsonObjectCallback<List_right>() { @Override public void onUi(List_right list_right) { if(lisenter1!=null){ lisenter1.onFinish1(list_right); } } @Override public void onFailed(Call call, IOException e) { } }); } @Override public void fenlei1(int pid) { Log.e("分类", "pid"+pid); HashMap<String, String> map = new HashMap<>(); map.put("cid",pid+""); OkHttp3Utils.doPost("http://120.27.23.105/product/getProductCatagory", map,new GsonObjectCallback<List_right>() { @Override public void onUi(List_right list_right) { Log.e("TAG", list_right.getMsg() ); if(lisenter1!=null){ lisenter1.onFinish1(list_right); } } @Override public void onFailed(Call call, IOException e) { } }); }}--------------------------
public class Fpresenter implements FUsermodel.OnFinishLisenter,FUsermodel.OnFinishLisenter1{ private final FUsermodel FUsermodel; private Fview fview; public Fpresenter(Fview fview) { this.fview = fview; this.FUsermodel = new FUsermodel(); } public void fenlei(){ FUsermodel.fenlei(); FUsermodel.setOnFinishLisenter(this); } public void fenlei1(int pid){ FUsermodel.fenlei1(pid); FUsermodel.setOnFinishLisenter1(this); } @Override public void onFinish(List_left list_left) { fview.getData(list_left); } @Override public void onFinish1(List_right list_right) { Log.e("TAG", list_right.getMsg() ); fview.getData1(list_right); }}---------left---
public class FrecycviewAdapter extends RecyclerView.Adapter<FrecycviewAdapter.FrecycHolder>{ private Context context; private List<List_left.DataBean> list; public static int tagPosition; public static int getTagPosition() { return tagPosition; } public static void setTagPosition(int tagPosition) { FrecycviewAdapter.tagPosition = tagPosition; } public FrecycviewAdapter(Context context, List<List_left.DataBean> list) { this.context = context; this.list = list; } @Override public FrecycHolder onCreateViewHolder(ViewGroup parent, int viewType) { final View view = View.inflate(context, R.layout.fen_left, null); final FrecycHolder frecycHolder=new FrecycHolder(view); view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { recycleViewItemClickListener.recycleViewItemClickListener(frecycHolder.getPosition(), view, frecycHolder); } }); return frecycHolder; } @Override public void onBindViewHolder(FrecycHolder holder, int position) { holder.textView.setText(list.get(position).getName()); if (position == getTagPosition()) { holder.itemView.setBackgroundResource(R.color.colorPblBackground); } else { holder.itemView.setBackgroundResource(R.color.colorwhile); } } @Override public int getItemCount() { return list.size(); } class FrecycHolder extends RecyclerView.ViewHolder{ TextView textView; public FrecycHolder(View itemView) { super(itemView); textView = itemView.findViewById(R.id.tv); } } //声明成员变量 public OnRecycleViewItemClickListener recycleViewItemClickListener; //定义点击接口 public interface OnRecycleViewItemClickListener { void recycleViewItemClickListener(int position, View view, RecyclerView.ViewHolder viewHolder); } //提供set方法 public void setRecycleViewItemClickListener(OnRecycleViewItemClickListener recycleViewItemClickListener) { this.recycleViewItemClickListener = recycleViewItemClickListener; }}----------------------right---public class FrecycviewAdapter1 extends RecyclerView.Adapter<FrecycviewAdapter1.FrecycHolder1>{ private Context context; private List<List_right.DataBean> list; public FrecycviewAdapter1(Context context, List<List_right.DataBean> list) { this.context = context; this.list = list; } @Override public FrecycHolder1 onCreateViewHolder(ViewGroup parent, int viewType) { View inflate = View.inflate(context, R.layout.fen_right, null); FrecycHolder1 frecycHolder1 = new FrecycHolder1(inflate); return frecycHolder1; } @Override public void onBindViewHolder(FrecycHolder1 holder, int position) { holder.textView.setText(list.get(position).getName()); holder.recyclerView.setLayoutManager(new GridLayoutManager(context,3)); holder.recyclerView.setAdapter(new FrecycviewAdapter2(context,list.get(position).getList())); } @Override public int getItemCount() { return list.size(); } class FrecycHolder1 extends RecyclerView.ViewHolder{ TextView textView; RecyclerView recyclerView; public FrecycHolder1(View itemView) { super(itemView); textView = itemView.findViewById(R.id.tv); recyclerView = itemView.findViewById(R.id.item_rlv); } }}-----------------------kuaipublic class FrecycviewAdapter2 extends RecyclerView.Adapter<FrecycviewAdapter2.FrecycHolder2>{ private Context context; private List<List_right.DataBean.ListBean> list; public FrecycviewAdapter2(Context context, List<List_right.DataBean.ListBean> list) { this.context = context; this.list = list; } @Override public FrecycHolder2 onCreateViewHolder(ViewGroup parent, int viewType) { View view = View.inflate(context, R.layout.fen_right_down, null); FrecycHolder2 frecycHolder2=new FrecycHolder2(view); return frecycHolder2; } @Override public void onBindViewHolder(FrecycHolder2 holder, int position) { holder.button.setText(list.get(position).getName()); } @Override public int getItemCount() { return list.size(); } class FrecycHolder2 extends RecyclerView.ViewHolder{ Button button; public FrecycHolder2(View itemView) { super(itemView); button = itemView.findViewById(R.id.bt1); } } //声明成员变量 public OnRecycleViewItemClickListener recycleViewItemClickListener; //定义点击接口 public interface OnRecycleViewItemClickListener { void recycleViewItemClickListener(int position, View view, RecyclerView.ViewHolder viewHolder); } //提供set方法 public void setRecycleViewItemClickListener(OnRecycleViewItemClickListener recycleViewItemClickListener) { this.recycleViewItemClickListener = recycleViewItemClickListener; }}------------------------------------------------------------------mainpublic class Fragment02 extends Fragment implements Fview{ private List<List_left.DataBean> list=new ArrayList<>(); private FrecycviewAdapter frecycviewAdapter; private FrecycviewAdapter1 frecycviewAdapter1; private RecyclerView recyclerView,recyclerView1; private Fpresenter fpresenter; private List<List_left.DataBean> data; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment02, container, false); recyclerView = view.findViewById(R.id.type_rvleft); recyclerView1 = view.findViewById(R.id.type_rvright); fpresenter = new Fpresenter(this); fpresenter.fenlei(); return view; } @Override public void getData(final List_left bean) { recyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); frecycviewAdapter=new FrecycviewAdapter(getActivity(), bean.getData()); recyclerView.setAdapter(frecycviewAdapter); frecycviewAdapter.setRecycleViewItemClickListener(new FrecycviewAdapter.OnRecycleViewItemClickListener() { @Override public void recycleViewItemClickListener(int position, View view, RecyclerView.ViewHolder viewHolder) { frecycviewAdapter.setTagPosition(position); int cid = bean.getData().get(position).getCid(); fpresenter.fenlei1(cid); frecycviewAdapter.notifyDataSetChanged(); } }); } @Override public void getData1(List_right bean) { recyclerView1.setLayoutManager(new LinearLayoutManager(getActivity())); frecycviewAdapter1= new FrecycviewAdapter1(getActivity(),bean.getData()); recyclerView1.setAdapter(frecycviewAdapter1); }}
阅读全文
0 0
- 域名的详细分类
- 分类的详细
- NoSQL数据库的详细分类
- zoj题目分类详细的
- Eclipse 快捷键 (有详细分类的)
- Django:DDTCMS关于分类的详细想法
- 设计模式的分类与详细介绍
- SQL语言的分类详细介绍
- java的collection、map详细分类
- Android很详细的将开源库分类列出的网站
- 二极管详细分类
- 域名分类详细介绍
- POJ 超详细分类
- hduoj题目详细分类
- POJ 超详细分类
- ACM 算法详细分类
- Qt接口详细分类
- poj 超详细分类
- 为何img、input等内联元素可以设置宽、高
- Java
- TabLayout和DrawerLayout结合使用
- PopuWindow
- 世峰运用三维地理信息技术为深信院场馆管理难题提供帮助
- 分类的详细
- https双向加密认证
- selenium定位不到元素方法汇总
- angularjs简单使用...
- mysql、mongodb、python(dataframe).聚合函数的形式,以及报错解决方案
- MySQL 系列(二) 你不知道的数据库操作
- python编程中的if __name__ == 'main': 的作用和原理
- 启动springboot报错
- MVp+RXJava+Retrofit+RecyclerView展示首页和详情页