京东分类

分类页面
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>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值