京东分类

xiaoxiao2025-10-26  8

分类页面 package com.bwie.jd.view.fragment; public class ClassifyFragment extends Fragment implements IMainView { @BindView(R.id.sao) ImageView sao; @BindView(R.id.left_recyview) RecyclerView leftRecyview; @BindView(R.id.right_recyview) RecyclerView rightRecyview; Unbinder unbinder; @BindView(R.id.banner) FlyBanner banner; @BindView(R.id.sou) ImageView sou; private MainPresenter mainPresenter; private FenRightPresenter fenRightPresenter; private int REQUEST_CODE = 200; private List images = new ArrayList<>();

@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_classify, container, false); mainPresenter = new MainPresenter(); mainPresenter.attachView(this); mainPresenter.loadDataFromNet(); fenRightPresenter = new FenRightPresenter(); fenRightPresenter.attachView(this); fenRightPresenter.getDataRight("1"); unbinder = ButterKnife.bind(this, view); return view; } @Override public void onSuccess(final HomeBean.DataBean data) { for (int i = 0; i < data.getBanner().size(); i++) { // Log.e("tag", data.getFenlei().get(i).getName()); images.add(data.getBanner().get(i).getIcon()); } banner.setImagesUrl(images); //左分类 List<HomeBean.DataBean.FenleiBean> fenlei = data.getFenlei(); LinearLayoutManager manager = new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false); leftRecyview.setLayoutManager(manager); FZAdapter adapter = new FZAdapter(getActivity(), fenlei); leftRecyview.setAdapter(adapter); adapter.setOnItemClickListener(new FZAdapter.OnItemClickListener() { @Override public void onItemClick(int position) { Toast.makeText(getActivity(), "点击了" + position, Toast.LENGTH_SHORT).show(); fenRightPresenter.getDataRight(String.valueOf(data.getFenlei().get(position).getCid())); } }); } @Override public void onErr(int errCode, String errMsg) { } @Override public void rightSuccess(List<FenRightBean.DataBean> msg) {

// Toast.makeText(getActivity(), “msg:” + msg, Toast.LENGTH_SHORT).show(); // Log.i(“www”,msg.toString()); LinearLayoutManager manager = new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false); rightRecyview.setLayoutManager(manager); FYAdapter fyAdapter = new FYAdapter(msg, getActivity()); rightRecyview.setAdapter(fyAdapter); }

@Override public void onDestroy() { super.onDestroy(); fenRightPresenter.dettachView(); mainPresenter.dettachView(); } @Override public void onDestroyView() { super.onDestroyView(); unbinder.unbind(); } //扫一扫点击事件 @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); /** * 处理二维码扫描结果 */ if (requestCode == REQUEST_CODE) { //处理扫描结果(在界面上显示) if (null != data) { Bundle bundle = data.getExtras(); if (bundle == null) { return; } if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_SUCCESS) { String result = bundle.getString(CodeUtils.RESULT_STRING); Toast.makeText(getActivity(), "解析结果:" + result, Toast.LENGTH_LONG).show(); } else if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_FAILED) { Toast.makeText(getActivity(), "解析二维码失败", Toast.LENGTH_LONG).show(); } } } } @OnClick({R.id.sao, R.id.sou}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.sao: Intent intent = new Intent(getActivity(), CaptureActivity.class); startActivityForResult(intent, REQUEST_CODE); break; case R.id.sou: Intent intent2 = new Intent(getActivity(), SouActivity.class); startActivity(intent2); break; } }

} FenModel package com.bwie.jd.model;

public class FenRightModel { public void RightModel(String cid, final MyRightCallBak myRightCallBak){ Log.i(“wowowo”,cid+""); Observable data = HttpUtils.getHttpUtilsInstance().apiClient.getRightData(cid); data.subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Observer() { @Override public void onSubscribe(Disposable d) { }

@Override public void onNext(FenRightBean fenRightBean) { List<FenRightBean.DataBean> data1 = fenRightBean.getData(); myRightCallBak.onSuccess(data1); } @Override public void onError(Throwable e) { } @Override public void onComplete() { } }); } public interface MyRightCallBak{ void onSuccess(List<FenRightBean.DataBean> data1); }

} Fenpresenter package com.bwie.jd.presenter;

public class FenRightPresenter extends BasePresenter{ private final FenRightModel fenRightModel;

public FenRightPresenter(){ fenRightModel = new FenRightModel(); } public void getDataRight(String cid) { fenRightModel.RightModel(cid, new FenRightModel.MyRightCallBak() { @Override public void onSuccess(List<FenRightBean.DataBean> data1) { getView().rightSuccess(data1); } }); }

} FZAdapter package com.bwie.jd.view.adapter; public class FZAdapter extends RecyclerView.Adapter<FZAdapter.ListHolder>{ private Context context; private List<HomeBean.DataBean.FenleiBean> data; private OnItemClickListener onItemClickListener;

public FZAdapter(Context context, List<HomeBean.DataBean.FenleiBean> data) { this.context = context; this.data = data; } @NonNull @Override public ListHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.fzitem, parent, false); ListHolder holder = new ListHolder(view); return holder; } @Override public void onBindViewHolder(@NonNull ListHolder holder, final int position) { holder.text01.setText(data.get(position).getName()); holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (onItemClickListener!=null) { onItemClickListener.onItemClick(position); } } }); } @Override public int getItemCount() { return data.size(); } class ListHolder extends RecyclerView.ViewHolder{ private final TextView text01; public ListHolder(View itemView) { super(itemView); text01 = itemView.findViewById(R.id.text01); } } public interface OnItemClickListener{ void onItemClick(int position); } public void setOnItemClickListener(OnItemClickListener onItemClickListener) { this.onItemClickListener = onItemClickListener; }

} FYAdaoter package com.bwie.jd.view.adapter; public class FYAdapter extends RecyclerView.Adapter<FYAdapter.oneHolder>{ private List<FenRightBean.DataBean> msg; private Context context;

public FYAdapter(List<FenRightBean.DataBean> msg, Context context) { this.msg = msg; this.context = context; } @NonNull @Override public oneHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.fritem, parent, false); oneHolder holder = new oneHolder(view); return holder; } @Override public void onBindViewHolder(@NonNull oneHolder holder, int position) { GridLayoutManager manager1 = new GridLayoutManager(context, 3, GridLayoutManager.VERTICAL, false); ZiAdapter adapter = new ZiAdapter(msg,context); holder.rec.setLayoutManager(manager1); holder.rec.setAdapter(adapter); holder.name.setText(msg.get(position).getName()); } @Override public int getItemCount() { return msg.size(); } class oneHolder extends RecyclerView.ViewHolder { private final TextView name; private final RecyclerView rec; public oneHolder(View itemView) { super(itemView); name = itemView.findViewById(R.id.text_fen_name); rec = itemView.findViewById(R.id.recycler_you_view); } }

} ZIAdapter package com.bwie.jd.view.adapter; public class ZiAdapter extends RecyclerView.Adapter<ZiAdapter.Holder>{ private List<FenRightBean.DataBean> msg; private Context context; OnItemClickListener onClickListener;

public ZiAdapter(OnItemClickListener onClickListener) { this.onClickListener = onClickListener; } public ZiAdapter(List<FenRightBean.DataBean> msg, Context context) { this.msg = msg; this.context = context; } @NonNull @Override public Holder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.ziitem, parent, false); Holder holder = new Holder(view); return holder; } @Override public void onBindViewHolder(@NonNull Holder holder, final int position) { Uri uri = Uri.parse(msg.get(position).getList().get(position).getIcon().split("\\|")[0]); holder.sim.setImageURI(uri); holder.name.setText(msg.get(position).getList().get(position).getName()); holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(context, LieActivity.class); //intent.putExtra("cid",msg.get(position).getCid()); intent.putExtra("name",msg.get(position).getList().get(position).getName()); context.startActivity(intent); } }); } @Override public int getItemCount() { return msg.size(); } class Holder extends RecyclerView.ViewHolder { private final SimpleDraweeView sim; private final TextView name; public Holder(View itemView) { super(itemView); sim = itemView.findViewById(R.id.sim_dr_view); name = itemView.findViewById(R.id.text_you_name); } } public void setOnClickListener(OnItemClickListener onClickListener) { this.onClickListener = onClickListener; } interface OnItemClickListener{ void onItemClickListener(int position); }

}

布局

<?xml version="1.0" encoding="utf-8"?>

<android.support.v7.widget.RecyclerView android:id="@+id/left_recyview" android:layout_width=“0dp” android:layout_height=“match_parent” android:layout_weight=“2” android:background="#F0F0F0"></android.support.v7.widget.RecyclerView>

<LinearLayout android:layout_width="0dp" android:layout_weight="8" android:layout_height="match_parent" android:orientation="vertical" > <com.recker.flybanner.FlyBanner android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="2" android:id="@+id/banner" ></com.recker.flybanner.FlyBanner> <android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="8" android:id="@+id/right_recyview" android:background="#fff"/> </LinearLayout>
转载请注明原文地址: https://www.6miu.com/read-5038539.html

最新回复(0)