From 2e2a4ce55fd3c49befe2f5dfe80a653446e3b3d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?mustafa=20ic=CC=A7men?= Date: Tue, 26 Sep 2017 20:41:48 +0300 Subject: [PATCH] piiza row --- .idea/misc.xml | 2 +- .../recycler/PizzaRecyclerAdapter.java | 121 +++++++++++++++++- .../android/fragment/order/PizzaFragment.java | 102 ++++++++++++++- .../interfaces/CheckBoxChangedListener.java | 12 ++ .../pizzalink/android/model/PizzaModel.java | 9 ++ app/src/main/res/layout/row_pizza_2.xml | 5 +- 6 files changed, 239 insertions(+), 12 deletions(-) create mode 100644 app/src/main/java/ch/pizzalink/android/interfaces/CheckBoxChangedListener.java diff --git a/.idea/misc.xml b/.idea/misc.xml index 7158618..cca2cda 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -37,7 +37,7 @@ - + diff --git a/app/src/main/java/ch/pizzalink/android/adapter/recycler/PizzaRecyclerAdapter.java b/app/src/main/java/ch/pizzalink/android/adapter/recycler/PizzaRecyclerAdapter.java index e7a1455..6d3c77f 100644 --- a/app/src/main/java/ch/pizzalink/android/adapter/recycler/PizzaRecyclerAdapter.java +++ b/app/src/main/java/ch/pizzalink/android/adapter/recycler/PizzaRecyclerAdapter.java @@ -3,6 +3,7 @@ package ch.pizzalink.android.adapter.recycler; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.graphics.drawable.Drawable; +import android.support.v7.widget.AppCompatCheckBox; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; @@ -10,19 +11,23 @@ import android.view.ViewGroup; import android.view.animation.Animation; import android.view.animation.Transformation; import android.view.animation.TranslateAnimation; +import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; import java.util.ArrayList; +import java.util.List; import butterknife.BindDrawable; import butterknife.BindView; +import butterknife.BindViews; import butterknife.ButterKnife; import ch.pizzalink.android.R; import ch.pizzalink.android.activity.BaseActivity; import ch.pizzalink.android.helper.ImageLoadHelper; +import ch.pizzalink.android.interfaces.CheckBoxChangedListener; import ch.pizzalink.android.interfaces.RecyclerItemClickListener; import ch.pizzalink.android.model.PizzaModel; @@ -37,6 +42,7 @@ public class PizzaRecyclerAdapter extends RecyclerView.Adapter pizzaList = new ArrayList<>(); private RecyclerItemClickListener recyclerItemClickListener; + private CheckBoxChangedListener checkBoxChangedListener; public static class PizzaViewHolder extends RecyclerView.ViewHolder { @@ -47,9 +53,38 @@ public class PizzaRecyclerAdapter extends RecyclerView.Adapter pizzaSizeCheckBoxList; + + @BindView(R.id.pizzaSize1Layout) LinearLayout pizzaSize1Layout; + @BindView(R.id.pizzaSize1NameTextView) TextView pizzaSize1NameTextView; + @BindView(R.id.pizzaSize1CheckBox) AppCompatCheckBox pizzaSize1CheckBox; + @BindView(R.id.pizzaSize1LengthTextView) TextView pizzaSize1LengthTextView; + + @BindView(R.id.pizzaSize2Layout) LinearLayout pizzaSize2Layout; + @BindView(R.id.pizzaSize2NameTextView) TextView pizzaSize2NameTextView; + @BindView(R.id.pizzaSize2CheckBox) AppCompatCheckBox pizzaSize2CheckBox; + @BindView(R.id.pizzaSize2LengthTextView) TextView pizzaSize2LengthTextView; + + @BindView(R.id.pizzaSize3Layout) LinearLayout pizzaSize3Layout; + @BindView(R.id.pizzaSize3NameTextView) TextView pizzaSize3NameTextView; + @BindView(R.id.pizzaSize3CheckBox) AppCompatCheckBox pizzaSize3CheckBox; + @BindView(R.id.pizzaSize3LengthTextView) TextView pizzaSize3LengthTextView; + + @BindView(R.id.increasePizzaCountTextView) ImageView increasePizzaCountTextView; + @BindView(R.id.pizzaCountTextView) TextView pizzaCountTextView; + @BindView(R.id.deccreasePizzaCountTextView) ImageView deccreasePizzaCountTextView; + + @BindView(R.id.pizzaPriceTextView) TextView pizzaPriceTextView; + @BindView(R.id.addPizzaToCartButton) Button addPizzaToCartButton; + + + public PizzaViewHolder(final View view, + final RecyclerItemClickListener recyclerItemClickListener, + final CheckBoxChangedListener checkBoxChangedListener) { super(view); ButterKnife.bind(this, view); + view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -57,6 +92,40 @@ public class PizzaRecyclerAdapter extends RecyclerView.Adapter pizzaList, RecyclerItemClickListener recyclerItemClickListener){ + public PizzaRecyclerAdapter(ArrayList pizzaList, + RecyclerItemClickListener recyclerItemClickListener, + CheckBoxChangedListener checkBoxChangedListener){ this.pizzaList = pizzaList; this.recyclerItemClickListener = recyclerItemClickListener; + this.checkBoxChangedListener = checkBoxChangedListener; } @Override @@ -91,7 +163,7 @@ public class PizzaRecyclerAdapter extends RecyclerView.Adapter sizeList = new ArrayList<>(); + + if(i % 4 == 0){ + SizeModel sizeModel1 = new SizeModel(); + sizeModel1.setName("Size 1"); + sizeModel1.setLength("Length 1"); + + SizeModel sizeModel2 = new SizeModel(); + sizeModel2.setName("Size 2"); + sizeModel2.setLength("Length 2"); + + SizeModel sizeModel3 = new SizeModel(); + sizeModel3.setName("Size 3"); + sizeModel3.setLength("Length 3"); + + SizeModel sizeModel4 = new SizeModel(); + sizeModel4.setName("Size 4"); + sizeModel4.setLength("Length 4"); + + sizeList.add(sizeModel1); + sizeList.add(sizeModel2); + sizeList.add(sizeModel3); + sizeList.add(sizeModel4); + + } else if(i % 4 == 1){ + + SizeModel sizeModel1 = new SizeModel(); + sizeModel1.setName("Size 1"); + sizeModel1.setLength("Length 1"); + + SizeModel sizeModel2 = new SizeModel(); + sizeModel2.setName("Size 2"); + sizeModel2.setLength("Length 2"); + + SizeModel sizeModel3 = new SizeModel(); + sizeModel3.setName("Size 3"); + sizeModel3.setLength("Length 3"); + + sizeList.add(sizeModel1); + sizeList.add(sizeModel2); + sizeList.add(sizeModel3); + + } else if(i % 4 == 2){ + + SizeModel sizeModel1 = new SizeModel(); + sizeModel1.setName("Size 1"); + sizeModel1.setLength("Length 1"); + + SizeModel sizeModel2 = new SizeModel(); + sizeModel2.setName("Size 2"); + sizeModel2.setLength("Length 2"); + + sizeList.add(sizeModel1); + sizeList.add(sizeModel2); + + } else { + + SizeModel sizeModel1 = new SizeModel(); + sizeModel1.setName("Size 1"); + sizeModel1.setLength("Length 1"); + + sizeList.add(sizeModel1); + } + + pizzaModel.setPizzaSizeList(sizeList); + + pizzaList.add(pizzaModel); } pizzaRecyclerAdapter.notifyDataSetChanged(); } diff --git a/app/src/main/java/ch/pizzalink/android/interfaces/CheckBoxChangedListener.java b/app/src/main/java/ch/pizzalink/android/interfaces/CheckBoxChangedListener.java new file mode 100644 index 0000000..a8207fd --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/interfaces/CheckBoxChangedListener.java @@ -0,0 +1,12 @@ +package ch.pizzalink.android.interfaces; + +import android.support.v7.widget.AppCompatCheckBox; +import android.view.View; + +/** + * Created by cimenmus on 25/09/2017. + */ + +public interface CheckBoxChangedListener { + public void onCheckedChanged(AppCompatCheckBox appCompatCheckBox, int position); +} diff --git a/app/src/main/java/ch/pizzalink/android/model/PizzaModel.java b/app/src/main/java/ch/pizzalink/android/model/PizzaModel.java index 675a9b7..9f5a7bf 100644 --- a/app/src/main/java/ch/pizzalink/android/model/PizzaModel.java +++ b/app/src/main/java/ch/pizzalink/android/model/PizzaModel.java @@ -10,6 +10,7 @@ public class PizzaModel { private String id, name, ingredients; private int count, isCartCount; + private String imageURL; private double price; private boolean isInCart; private ArrayList pizzaSizeList; @@ -86,4 +87,12 @@ public class PizzaModel { public void setExpanded(boolean expanded) { isExpanded = expanded; } + + public String getImageURL() { + return imageURL; + } + + public void setImageURL(String imageURL) { + this.imageURL = imageURL; + } } diff --git a/app/src/main/res/layout/row_pizza_2.xml b/app/src/main/res/layout/row_pizza_2.xml index e18142a..f639a8c 100644 --- a/app/src/main/res/layout/row_pizza_2.xml +++ b/app/src/main/res/layout/row_pizza_2.xml @@ -90,6 +90,7 @@ android:layout_centerVertical="true">