Advertisement
Carelkat

CustomAdapter

Oct 12th, 2017
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.15 KB | None | 0 0
  1. public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.MyViewHolder> {
  2.  
  3.     private LayoutInflater inflater;
  4.     private Context ctx;
  5.  
  6.     public CustomAdapter(Context ctx) {
  7.  
  8.         inflater = LayoutInflater.from(ctx);
  9.         this.ctx = ctx;
  10.     }
  11.  
  12.     @Override
  13.     public CustomAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
  14.         View view = inflater.inflate(R.layout.rv_item, parent, false);
  15.         MyViewHolder holder = new MyViewHolder(view);
  16.  
  17.         return holder;
  18.     }
  19.  
  20.     @Override
  21.     public void onBindViewHolder(final CustomAdapter.MyViewHolder holder, int position) {
  22.  
  23.         holder.tvBrand.setText((CharSequence) modelArrayList.get(position).getBrand());
  24.         holder.tvImage.setImageResource(Integer.parseInt(String.valueOf(modelArrayList.get(position).getImage())));
  25.         holder.tvCases.setText(String.valueOf(modelArrayList.get(position).getNumber()));
  26.         holder.tvPallet_size.setText(String.valueOf(modelArrayList.get(position).getPallet_size()));
  27.         holder.tvCases.setText(String.valueOf(modelArrayList.get(position).getNumber2()));
  28.         holder.tvPallets.setText(String.valueOf(modelArrayList.get(position).getNumber()));
  29.         holder.tvCases.setText(String.valueOf(modelArrayList.get(position).getNumber2()));
  30.     }
  31.  
  32.     @Override
  33.     public int getItemCount() {
  34.         return modelArrayList.size();
  35.     }
  36.  
  37.     class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
  38.  
  39.         protected Button btn_cases_plus, btn_cases_minus, btn_pallets_plus, btn_pallets_minus;
  40.         protected ImageView tvImage;
  41.         private TextView tvBrand, tvCases,tvPallets, tvPallet_size;
  42.  
  43.         public MyViewHolder(View itemView) {
  44.             super(itemView);
  45.  
  46.             tvBrand = (TextView) itemView.findViewById(R.id.brand_name);
  47.             tvImage = (ImageView) itemView.findViewById(R.id.beer_logo);
  48.             tvCases = (TextView) itemView.findViewById(R.id.cases_text_view);
  49.             tvPallet_size = (TextView) itemView.findViewById(R.id.pallets_size);
  50.             tvPallets = (TextView) itemView.findViewById(R.id.pallets_text_view);
  51.             btn_cases_plus = (Button) itemView.findViewById(R.id.casePlus1);
  52.             btn_cases_minus = (Button) itemView.findViewById(R.id.caseMinus1);
  53.             btn_pallets_plus = (Button) itemView.findViewById(R.id.palletsPlus1);
  54.             btn_pallets_minus = (Button) itemView.findViewById(R.id.palletsMinus1);
  55.  
  56.             btn_cases_plus.setTag(R.integer.btn_cases_plus_view, itemView);
  57.             btn_cases_minus.setTag(R.integer.btn_cases_minus_view, itemView);
  58.             btn_cases_plus.setOnClickListener(this);
  59.             btn_cases_minus.setOnClickListener(this);
  60.             btn_pallets_plus.setTag(R.integer.btn_pallets_plus_view, itemView);
  61.             btn_pallets_minus.setTag(R.integer.btn_pallets_minus_view, itemView);
  62.             btn_pallets_plus.setOnClickListener(this);
  63.             btn_pallets_minus.setOnClickListener(this);
  64.  
  65.         }
  66.  
  67.         // onClick Listener for view
  68.         @Override
  69.         public void onClick(View v) {
  70.  
  71.             if (v.getId() == btn_cases_plus.getId()){
  72.  
  73.                 View tempview = (View) btn_cases_plus.getTag(R.integer.btn_cases_plus_view);
  74.                 TextView tvCases = (TextView) tempview.findViewById(R.id.cases_text_view);
  75.                 int number = Integer.parseInt(tvCases.getText().toString()) + 1;
  76.                 tvCases.setText(String.valueOf(number));
  77.                 modelArrayList.get(getAdapterPosition()).setNumber(number);
  78.  
  79.             } else if(v.getId() == btn_cases_minus.getId()) {
  80.  
  81.                 View tempview = (View) btn_cases_minus.getTag(R.integer.btn_cases_minus_view);
  82.                 TextView tvCases = (TextView) tempview.findViewById(R.id.cases_text_view);
  83.                 int number = Integer.parseInt(tvCases.getText().toString()) - 1;
  84.                 if (number == 0 || number <0) {
  85.                     Toast.makeText(ctx,"You cannot order less than one case", Toast.LENGTH_SHORT).show();
  86.                     tvCases.setText(String.valueOf(0));
  87.                     return;
  88.                 }
  89.                 tvCases.setText(String.valueOf(number));
  90.                 modelArrayList.get(getAdapterPosition()).setNumber(number);
  91.  
  92.             }  else if(v.getId() == btn_pallets_plus.getId()) {
  93.  
  94.                 View tempview = (View) btn_pallets_plus.getTag(R.integer.btn_pallets_plus_view);
  95.                 TextView tvPallets = (TextView) tempview.findViewById(R.id.pallets_text_view);
  96.                 TextView tvCases = (TextView) tempview.findViewById(R.id.cases_text_view);
  97.                 TextView tvPallet_size = (TextView) tempview.findViewById(R.id.pallets_size);
  98.                 int number = Integer.parseInt(tvPallets.getText().toString()) + 1;
  99.                 tvPallets.setText(String.valueOf(number));
  100.                 int number2 = Integer.parseInt(tvPallets.getText().toString()) * Integer.parseInt(tvPallet_size.getText().toString());
  101.                 tvCases.setText(String.valueOf(number2));
  102.                 modelArrayList.get(getAdapterPosition()).setNumber(number);
  103.                 modelArrayList.get(getAdapterPosition()).setNumber2(number2);
  104.  
  105.             }   else {
  106.                 if (v.getId() == btn_pallets_minus.getId()) {
  107.  
  108.                     View tempview = (View) btn_pallets_minus.getTag(R.integer.btn_pallets_minus_view);
  109.                     TextView tvPallets = (TextView) tempview.findViewById(R.id.pallets_text_view);
  110.                     TextView tvCases = (TextView) tempview.findViewById(R.id.cases_text_view);
  111.                     TextView tvPallet_size = (TextView) tempview.findViewById(R.id.pallets_size);
  112.                     int number = Integer.parseInt(tvPallets.getText().toString()) - 1;
  113.                     tvPallets.setText(String.valueOf(number));
  114.                     int number2 = Integer.parseInt(tvPallets.getText().toString()) * Integer.parseInt(tvPallet_size.getText().toString());
  115.                     tvCases.setText(String.valueOf(number2));
  116.                     if (number == 0 || number < 0) {
  117.                         Toast.makeText(ctx, "You cannot order less than one pallet", Toast.LENGTH_SHORT).show();
  118.                         tvCases.setText(String.valueOf(0));
  119.                         tvPallets.setText(String.valueOf(0));
  120.                     }
  121.                     modelArrayList.get(getAdapterPosition()).setNumber(number);
  122.                     modelArrayList.get(getAdapterPosition()).setNumber2(number2);
  123.  
  124.                 }
  125.                 }}
  126.  
  127.         public void orderMessage(View view) {
  128.             TextView textName = (TextView) view.findViewById(R.id.brand_name);
  129.             String naam = textName.getText().toString();
  130.             TextView textQuant = (TextView) view.findViewById(R.id.cases_text_view);
  131.             String hoeveel = textQuant.getText().toString();
  132.  
  133.             String orderMessage = createOrderSummary(naam, hoeveel);
  134.         }
  135.         public String createOrderSummary(String naam, String hoeveel) {
  136.             String orderMessage = "Brand" + naam;
  137.             orderMessage += "Quantity" + hoeveel;
  138.             return orderMessage;
  139.         }}}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement