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 12e916f..e7a1455 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 @@ -1,11 +1,18 @@ package ch.pizzalink.android.adapter.recycler; +import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; import android.graphics.drawable.Drawable; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.view.animation.Animation; +import android.view.animation.Transformation; +import android.view.animation.TranslateAnimation; import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; import android.widget.TextView; import java.util.ArrayList; @@ -23,41 +30,49 @@ import ch.pizzalink.android.model.PizzaModel; * Created by cimenmus on 20/09/2017. */ -public class PizzaRecyclerAdapter extends RecyclerView.Adapter { +public class PizzaRecyclerAdapter extends RecyclerView.Adapter{ - private ArrayList pizzaList; + private final int HOLDER_PIZZA = 0; + private final int HOLDER_SPACE = 1; + + private ArrayList pizzaList = new ArrayList<>(); private RecyclerItemClickListener recyclerItemClickListener; - public static class ViewHolder extends RecyclerView.ViewHolder{ + public static class PizzaViewHolder extends RecyclerView.ViewHolder { @BindView(R.id.pizzaNameTextView) TextView pizzaNameTextView; @BindView(R.id.pizzaImageView) ImageView pizzaImageView; @BindView(R.id.pizzaIngredientsTextView) TextView pizzaIngredientsTextView; + @BindView(R.id.pizzaBottomLayout) LinearLayout pizzaBottomLayout; + @BindView(R.id.expandBottomLayoutImageView) ImageView expandBottomLayoutImageView; + @BindView(R.id.collapseBottomLayoutImageView) ImageView collapseBottomLayoutImageView; - public ViewHolder(final View view, final RecyclerItemClickListener recyclerItemClickListener) { + public PizzaViewHolder(final View view, final RecyclerItemClickListener recyclerItemClickListener) { super(view); ButterKnife.bind(this, view); - /* - favoriteOfferImageView.setClickable(true); - view.setOnClickListener(new View.OnClickListener() { @Override - public void onClick(View v) { + public void onClick(View view) { if(recyclerItemClickListener != null) - recyclerItemClickListener.onItemClick(view, getAdapterPosition()); + recyclerItemClickListener.onItemClick(pizzaBottomLayout, getAdapterPosition()); } }); - - favoriteOfferImageView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - if(recyclerItemClickListener != null) - recyclerItemClickListener.onItemClick(favoriteOfferImageView, getAdapterPosition()); - } - }); - */ } + } + public static class SpaceViewHolder extends RecyclerView.ViewHolder{ + public SpaceViewHolder(final View view) { + super(view); + } + } + + @Override + public int getItemViewType(int position) { + + if(position == pizzaList.size()) + return HOLDER_SPACE; + + return HOLDER_PIZZA; } public PizzaRecyclerAdapter(ArrayList pizzaList, RecyclerItemClickListener recyclerItemClickListener){ @@ -66,22 +81,68 @@ public class PizzaRecyclerAdapter extends RecyclerView.Adapter pizzaSizeList; + private boolean isExpanded; public String getId() { return id; @@ -77,4 +78,12 @@ public class PizzaModel { public void setPizzaSizeList(ArrayList pizzaSizeList) { this.pizzaSizeList = pizzaSizeList; } + + public boolean isExpanded() { + return isExpanded; + } + + public void setExpanded(boolean expanded) { + isExpanded = expanded; + } } diff --git a/app/src/main/res/drawable/ic_cancel.xml b/app/src/main/res/drawable/ic_cancel.xml new file mode 100644 index 0000000..d7e3d7c --- /dev/null +++ b/app/src/main/res/drawable/ic_cancel.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_decrease.xml b/app/src/main/res/drawable/ic_decrease.xml new file mode 100644 index 0000000..aa7d64b --- /dev/null +++ b/app/src/main/res/drawable/ic_decrease.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_decrease_2.xml b/app/src/main/res/drawable/ic_decrease_2.xml new file mode 100644 index 0000000..5866be4 --- /dev/null +++ b/app/src/main/res/drawable/ic_decrease_2.xml @@ -0,0 +1,5 @@ + + + + diff --git a/app/src/main/res/drawable/ic_down.xml b/app/src/main/res/drawable/ic_down_black.xml similarity index 100% rename from app/src/main/res/drawable/ic_down.xml rename to app/src/main/res/drawable/ic_down_black.xml diff --git a/app/src/main/res/drawable/ic_down_red.xml b/app/src/main/res/drawable/ic_down_red.xml new file mode 100644 index 0000000..1c02faa --- /dev/null +++ b/app/src/main/res/drawable/ic_down_red.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_increase.xml b/app/src/main/res/drawable/ic_increase.xml new file mode 100644 index 0000000..19361a1 --- /dev/null +++ b/app/src/main/res/drawable/ic_increase.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_up.xml b/app/src/main/res/drawable/ic_up_black.xml similarity index 100% rename from app/src/main/res/drawable/ic_up.xml rename to app/src/main/res/drawable/ic_up_black.xml diff --git a/app/src/main/res/layout/fragment_pizza.xml b/app/src/main/res/layout/fragment_pizza.xml index ae1706b..93252bd 100644 --- a/app/src/main/res/layout/fragment_pizza.xml +++ b/app/src/main/res/layout/fragment_pizza.xml @@ -4,4 +4,5 @@ android:id="@+id/pizzaRecyclerView" android:layout_width="match_parent" android:layout_height="match_parent" + android:background="@color/actvity_default_background_color_1" android:scrollbars="vertical"/> \ No newline at end of file diff --git a/app/src/main/res/layout/row_pizza.xml b/app/src/main/res/layout/row_pizza.xml index 317d3f2..5768375 100644 --- a/app/src/main/res/layout/row_pizza.xml +++ b/app/src/main/res/layout/row_pizza.xml @@ -67,7 +67,7 @@ android:paddingRight="4dp" android:paddingEnd="4dp" android:layout_gravity="center_horizontal" - android:src="@drawable/ic_up" /> + android:src="@drawable/ic_up_black" /> + android:src="@drawable/ic_down_black"/> diff --git a/app/src/main/res/layout/row_pizza_2.xml b/app/src/main/res/layout/row_pizza_2.xml index 1522e00..e18142a 100644 --- a/app/src/main/res/layout/row_pizza_2.xml +++ b/app/src/main/res/layout/row_pizza_2.xml @@ -7,14 +7,18 @@ android:layout_height="wrap_content" android:background="@color/white" app:cardCornerRadius="4dp" - android:layout_margin="12dp"> + android:layout_marginTop="12dp" + android:layout_marginLeft="12dp" + android:layout_marginStart="12dp" + android:layout_marginRight="12dp" + android:layout_marginEnd="12dp"> - @@ -26,6 +30,7 @@ android:layout_gravity="center_horizontal" /> - + - + + - - - - - - - -