mirror of
https://github.com/Nezumi-2711/Foodify.git
synced 2026-09-22 20:00:50 +00:00
Add shop detail screen
This commit is contained in:
@@ -188,6 +188,14 @@ public class FoodDetailActivity extends AppCompatActivity {
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//Move to shop detail screen when onClick
|
||||
shopName_txt.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
startActivity(new Intent(FoodDetailActivity.this, ShopDetailActivity.class));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private Basket getFoodExistInBasket(String foodId){
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.capstone.foodify.Activity;
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.recyclerview.widget.DividerItemDecoration;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import com.capstone.foodify.Model.Food.Food;
|
||||
import com.capstone.foodify.Model.Food.FoodFavoriteAdapter;
|
||||
import com.capstone.foodify.Model.Food.FoodShopAdapter;
|
||||
import com.capstone.foodify.R;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
import com.squareup.picasso.Picasso;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class ShopDetailActivity extends AppCompatActivity {
|
||||
|
||||
private List<Food> listFood = new ArrayList<>();
|
||||
ImageView imageShop, back_image;
|
||||
RecyclerView recycler_view_food_shop;
|
||||
FoodShopAdapter adapter;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_shop_detail);
|
||||
|
||||
//Init Component
|
||||
imageShop = findViewById(R.id.image_shop);
|
||||
recycler_view_food_shop = findViewById(R.id.recycler_view_food_shop);
|
||||
back_image = findViewById(R.id.back_image);
|
||||
adapter = new FoodShopAdapter();
|
||||
|
||||
//Init temp data
|
||||
Picasso.get().load("https://firebasestorage.googleapis.com/v0/b/foodify-55954.appspot.com/o/Free%20Food%20Advertising%20Banner%20Template.jpg?alt=media&token=8b836fd7-f18f-46c6-a14f-27680e51a1d5").into(imageShop);
|
||||
|
||||
for(int i = 1; i <= 10; i++){
|
||||
listFood.add(new Food("https://images.unsplash.com/photo-1546069901-ba9599a7e63c?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxleHBsb3JlLWZlZWR8MXx8fGVufDB8fHx8&w=1000&q=80", "Food " + i, "50.000đ"));
|
||||
}
|
||||
|
||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
||||
recycler_view_food_shop.setLayoutManager(linearLayoutManager);
|
||||
|
||||
RecyclerView.ItemDecoration itemDecoration = new DividerItemDecoration(this, DividerItemDecoration.VERTICAL);
|
||||
recycler_view_food_shop.addItemDecoration(itemDecoration);
|
||||
|
||||
adapter.setData(listFood);
|
||||
recycler_view_food_shop.setAdapter(adapter);
|
||||
|
||||
back_image.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
onBackPressed();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
@@ -147,8 +147,6 @@ public class SearchFragment extends Fragment {
|
||||
foodAdapter.setData(listFoodSearch);
|
||||
foodAdapter.notifyDataSetChanged();
|
||||
hideProgressBarAndShowEndOfListText();
|
||||
|
||||
Toast.makeText(getContext(), "List food search: " + foodData.size(), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
|
||||
private void getListCategory() {
|
||||
|
||||
@@ -9,6 +9,7 @@ public class Food implements Comparable<Food>{
|
||||
private String description;
|
||||
private String shopName;
|
||||
private String reviewCount;
|
||||
private String quantity_sold;
|
||||
public Food() {
|
||||
}
|
||||
public Food(String id, String img, String name, String price, String shopName) {
|
||||
@@ -19,6 +20,12 @@ public class Food implements Comparable<Food>{
|
||||
this.shopName = shopName;
|
||||
}
|
||||
|
||||
public Food(String img, String name, String price) {
|
||||
this.img = img;
|
||||
this.name = name;
|
||||
this.price = price;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
@@ -68,6 +75,14 @@ public class Food implements Comparable<Food>{
|
||||
this.reviewCount = reviewCount;
|
||||
}
|
||||
|
||||
public String getQuantity_sold() {
|
||||
return quantity_sold;
|
||||
}
|
||||
|
||||
public void setQuantity_sold(String quantity_sold) {
|
||||
this.quantity_sold = quantity_sold;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int compareTo(Food food) {
|
||||
if(getName().isEmpty() || food.getName().isEmpty()){
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.capstone.foodify.Model.Food;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.text.Layout;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@@ -17,9 +16,7 @@ import com.capstone.foodify.Common;
|
||||
import com.capstone.foodify.R;
|
||||
import com.squareup.picasso.Picasso;
|
||||
|
||||
import java.text.NumberFormat;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
public class FoodAdapter extends RecyclerView.Adapter<FoodAdapter.FoodViewHolder>{
|
||||
|
||||
@@ -39,7 +36,7 @@ public class FoodAdapter extends RecyclerView.Adapter<FoodAdapter.FoodViewHolder
|
||||
@NonNull
|
||||
@Override
|
||||
public FoodViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_foods, parent, false);
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_food, parent, false);
|
||||
return new FoodViewHolder(view);
|
||||
}
|
||||
|
||||
|
||||
@@ -14,9 +14,7 @@ import com.capstone.foodify.Common;
|
||||
import com.capstone.foodify.R;
|
||||
import com.squareup.picasso.Picasso;
|
||||
|
||||
import java.text.NumberFormat;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
public class FoodSearchAdapter extends RecyclerView.Adapter<FoodSearchAdapter.FoodViewHolder>{
|
||||
|
||||
@@ -36,7 +34,7 @@ public class FoodSearchAdapter extends RecyclerView.Adapter<FoodSearchAdapter.Fo
|
||||
@NonNull
|
||||
@Override
|
||||
public FoodViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_foods_search, parent, false);
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_food_search, parent, false);
|
||||
return new FoodViewHolder(view);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
package com.capstone.foodify.Model.Food;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.capstone.foodify.R;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
import com.squareup.picasso.Picasso;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class FoodShopAdapter extends RecyclerView.Adapter<FoodShopAdapter.FoodShopViewHolder> {
|
||||
|
||||
private List<Food> listFoodShop;
|
||||
|
||||
public FoodShopAdapter() {
|
||||
}
|
||||
|
||||
public void setData(List<Food> listFoodShop){
|
||||
this.listFoodShop = listFoodShop;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public FoodShopViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_food_shop, parent, false);
|
||||
return new FoodShopViewHolder(view);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull FoodShopViewHolder holder, int position) {
|
||||
Food food = listFoodShop.get(position);
|
||||
|
||||
if(food == null)
|
||||
return;
|
||||
|
||||
Picasso.get().load(food.getImg()).into(holder.imageView);
|
||||
holder.foodName.setText(food.getName());
|
||||
holder.quantitySoldOut.setText("1.2k đã bán");
|
||||
holder.price.setText(food.getPrice());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
if(listFoodShop != null)
|
||||
return listFoodShop.size();
|
||||
return 0;
|
||||
}
|
||||
|
||||
public class FoodShopViewHolder extends RecyclerView.ViewHolder {
|
||||
|
||||
ImageView imageView;
|
||||
TextView foodName, quantitySoldOut, price;
|
||||
|
||||
|
||||
public FoodShopViewHolder(@NonNull View itemView) {
|
||||
super(itemView);
|
||||
|
||||
imageView = itemView.findViewById(R.id.image_view);
|
||||
foodName = itemView.findViewById(R.id.food_name_text_view);
|
||||
quantitySoldOut = itemView.findViewById(R.id.quantity_sold_out);
|
||||
price = itemView.findViewById(R.id.price_text_view);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,15 +1,16 @@
|
||||
package com.capstone.foodify.Model.Shop;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.capstone.foodify.Activity.ShopDetailActivity;
|
||||
import com.capstone.foodify.R;
|
||||
|
||||
import java.util.List;
|
||||
@@ -32,7 +33,7 @@ public class ShopAdapter extends RecyclerView.Adapter<ShopAdapter.ShopViewHolder
|
||||
@NonNull
|
||||
@Override
|
||||
public ShopViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_restaurant, parent, false);
|
||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_shop, parent, false);
|
||||
return new ShopViewHolder(view);
|
||||
}
|
||||
|
||||
@@ -44,6 +45,12 @@ public class ShopAdapter extends RecyclerView.Adapter<ShopAdapter.ShopViewHolder
|
||||
return;
|
||||
|
||||
holder.imgView.setImageResource(shop.getResourceId());
|
||||
holder.itemView.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
context.startActivity(new Intent(context, ShopDetailActivity.class));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user