diff --git a/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java b/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java index 513437d..6840b9a 100644 --- a/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java +++ b/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java @@ -1,18 +1,25 @@ package com.capstone.foodify.Activity; -import androidx.appcompat.app.AppCompatActivity; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; - +import android.app.Dialog; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; import android.os.Bundle; +import android.view.Gravity; import android.view.View; +import android.view.Window; +import android.view.WindowManager; import android.widget.Button; +import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.TextView; import android.widget.Toast; +import androidx.appcompat.app.AppCompatActivity; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import com.capstone.foodify.API.FoodApi; import com.capstone.foodify.Model.Food.Food; import com.capstone.foodify.Model.Food.ImageFood; @@ -25,11 +32,10 @@ import com.denzcoskun.imageslider.models.SlideModel; import com.mcdev.quantitizerlibrary.AnimationStyle; import com.mcdev.quantitizerlibrary.HorizontalQuantitizer; import com.mcdev.quantitizerlibrary.QuantitizerListener; +import com.willy.ratingbar.RotationRatingBar; -import java.lang.reflect.Array; import java.text.NumberFormat; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.Locale; @@ -53,6 +59,7 @@ public class FoodDetailActivity extends AppCompatActivity { private float totalPrice, price; private RecyclerView recyclerView_review; private ReviewAdapter reviewAdapter; + private Button rating_button; @Override @@ -80,6 +87,7 @@ public class FoodDetailActivity extends AppCompatActivity { countRating_txt = findViewById(R.id.count_rating_text_view); description_content_txt = findViewById(R.id.content_description_text_view); recyclerView_review = findViewById(R.id.recycler_view_review); + rating_button = findViewById(R.id.rating_button); reviewAdapter = new ReviewAdapter(this); @@ -129,6 +137,13 @@ public class FoodDetailActivity extends AppCompatActivity { onBackPressed(); } }); + + rating_button.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + openReviewDialog(Gravity.CENTER); + } + }); } private List getListReview(){ @@ -246,4 +261,43 @@ public class FoodDetailActivity extends AppCompatActivity { }); } + + private void openReviewDialog(int gravity){ + final Dialog dialog = new Dialog(this); + dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); + dialog.setContentView(R.layout.dialog_review); + + Window window = dialog.getWindow(); + if(window == null) + return; + + window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.WRAP_CONTENT); + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + + WindowManager.LayoutParams windowAttributes = window.getAttributes(); + windowAttributes.gravity = gravity; + window.setAttributes(windowAttributes); + + if(Gravity.BOTTOM == gravity){ + dialog.setCancelable(true); + } else { + dialog.setCancelable(false); + } + + EditText review_content = dialog.findViewById(R.id.edit_text_review); + RotationRatingBar ratingBar = dialog.findViewById(R.id.rating_bar); + Button confirm = dialog.findViewById(R.id.confirm_button); + Button cancel = dialog.findViewById(R.id.cancel_button); + + cancel.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + dialog.dismiss(); + } + }); + + //TO DO + + dialog.show(); + } } \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_color_corner_16.xml b/app/src/main/res/drawable/bg_color_corner_16.xml new file mode 100644 index 0000000..1bc0a7c --- /dev/null +++ b/app/src/main/res/drawable/bg_color_corner_16.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_grey_color_corner.xml b/app/src/main/res/drawable/bg_grey_color_corner.xml new file mode 100644 index 0000000..654ac0c --- /dev/null +++ b/app/src/main/res/drawable/bg_grey_color_corner.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_primary_color_dark_corner.xml b/app/src/main/res/drawable/bg_primary_color_dark_corner.xml new file mode 100644 index 0000000..7ba89be --- /dev/null +++ b/app/src/main/res/drawable/bg_primary_color_dark_corner.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_corner_16.xml b/app/src/main/res/drawable/bg_white_corner_16.xml new file mode 100644 index 0000000..1ebe8ee --- /dev/null +++ b/app/src/main/res/drawable/bg_white_corner_16.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_white_corner_border_gray.xml b/app/src/main/res/drawable/bg_white_corner_border_gray.xml new file mode 100644 index 0000000..1a57a15 --- /dev/null +++ b/app/src/main/res/drawable/bg_white_corner_border_gray.xml @@ -0,0 +1,8 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_review.xml b/app/src/main/res/layout/dialog_review.xml new file mode 100644 index 0000000..e4a2ce3 --- /dev/null +++ b/app/src/main/res/layout/dialog_review.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 0ef51b5..444c442 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -8,4 +8,5 @@ #F99928 #ACA5A5 #FF0000 + #1EAE94 \ No newline at end of file