diff --git a/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java b/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java
index 6a667d4445302c88ed53fef8b8b4df18bd596469..8e6b9948a743548a80078a3247479f72d740961e 100644
--- a/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java
+++ b/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java
@@ -1,5 +1,6 @@
 package com.example.mampfmobil.ui;
 
+import android.content.Context;
 import android.content.Intent;
 import android.os.Bundle;
 import android.util.Log;
@@ -20,6 +21,8 @@ import com.example.mampfmobil.ui.Classes.ShopItem;
 import com.example.mampfmobil.ui.Classes.Supplier;
 
 import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.Vector;
 
 public class CustomerActivity extends AppCompatActivity {
@@ -132,5 +135,32 @@ private ActivityCustomerBinding binding;
         }
     }
 
+    public static void sortShop(String inputString, Context context) {
 
+        if (inputString.equals(context.getString(R.string.price))) {
+            Collections.sort(shopItemList, new Comparator<ShopItem>() {
+                @Override
+                public int compare(ShopItem item1, ShopItem item2) {
+                    return Double.compare(item1.item.price, item2.item.price);
+                }
+            });
+        }
+        if (inputString.equals(context.getString(R.string.restamount))) {
+            Collections.sort(shopItemList, new Comparator<ShopItem>() {
+                @Override
+                public int compare(ShopItem item1, ShopItem item2) {
+                    return Double.compare( item2.quantity,item1.quantity);
+                }
+            });
+        }
+        if (inputString.equals(context.getString(R.string.name))) {
+            Collections.sort(shopItemList, new Comparator<ShopItem>() {
+                @Override
+                public int compare(ShopItem item1, ShopItem item2) {
+                    return item1.item.name.compareTo(item2.item.name);
+                }
+            });
+        }
+
+    }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/example/mampfmobil/ui/customer/CustomerShopFragment.java b/app/src/main/java/com/example/mampfmobil/ui/customer/CustomerShopFragment.java
index f411482df4f6adc605d466d7212801b0ebc093ee..9e6e4c21f718e62ff4b5ce47d18fd1d0b4ad8309 100644
--- a/app/src/main/java/com/example/mampfmobil/ui/customer/CustomerShopFragment.java
+++ b/app/src/main/java/com/example/mampfmobil/ui/customer/CustomerShopFragment.java
@@ -16,13 +16,19 @@ import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.AdapterView;
+import android.widget.ArrayAdapter;
 import android.widget.Button;
 import android.widget.EditText;
+import android.widget.Spinner;
 
 import com.example.mampfmobil.R;
 import com.example.mampfmobil.ui.Classes.Recyclerviewadapter_Shop;
 import com.example.mampfmobil.ui.CustomerActivity;
 
+import java.util.ArrayList;
+import java.util.List;
+
 public class CustomerShopFragment extends Fragment {
 
     private CustomerShopViewModel mViewModel;
@@ -39,6 +45,18 @@ public class CustomerShopFragment extends Fragment {
         Button searchButton = rootView.findViewById(R.id.searchButton);
         EditText searchEditText = rootView.findViewById(R.id.editTextSearch);
 
+        List<String> options = new ArrayList<>();
+        options.add(getString(R.string.name));
+        options.add(getString(R.string.price));
+        options.add(getString(R.string.restamount));
+
+        Spinner spinner = rootView.findViewById(R.id.spinnerOptions);
+        ArrayAdapter<String> adapter2 = new ArrayAdapter<>(requireContext(), android.R.layout.simple_spinner_item, options);
+        adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
+        spinner.setAdapter(adapter2);
+
+
+
         // Set the layout manager
         LinearLayoutManager layoutManager = new LinearLayoutManager(requireActivity());
 
@@ -61,6 +79,20 @@ public class CustomerShopFragment extends Fragment {
             }
         });
 
+        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
+            @Override
+            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
+                String selectedOption = options.get(position);
+                CustomerActivity.sortShop(selectedOption,getContext());
+                adapter.notifyDataSetChanged();
+            }
+
+            @Override
+            public void onNothingSelected(AdapterView<?> parent) {
+                // Hier kannst du entsprechend reagieren, wenn nichts ausgewählt ist
+            }
+        });
+
         AppCompatActivity activity = (AppCompatActivity) requireActivity();
         // Enable the back button in the ActionBar
         ActionBar actionBar = activity.getSupportActionBar();
diff --git a/app/src/main/res/layout/fragment_customer_shop.xml b/app/src/main/res/layout/fragment_customer_shop.xml
index dd49aa7fa663fd5e35c70feba5d37e64a3d1fd78..16c7978d0c90752a23d4762c3d780cbfce45e718 100644
--- a/app/src/main/res/layout/fragment_customer_shop.xml
+++ b/app/src/main/res/layout/fragment_customer_shop.xml
@@ -26,12 +26,12 @@
         android:id="@+id/myShopRecycler"
         android:layout_width="match_parent"
         android:layout_height="0dp"
-        android:layout_marginTop="16dp"
+        android:layout_marginTop="8dp"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintHorizontal_bias="0.0"
         app:layout_constraintStart_toStartOf="parent"
-        app:layout_constraintTop_toBottomOf="@+id/searchButton"
+        app:layout_constraintTop_toBottomOf="@+id/spinnerOptions"
         app:layout_constraintVertical_bias="0.0">
 
     </androidx.recyclerview.widget.RecyclerView>
@@ -46,4 +46,25 @@
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@+id/editTextSearch"
         app:layout_constraintTop_toTopOf="parent" />
+
+    <Spinner
+        android:id="@+id/spinnerOptions"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="8dp"
+        app:layout_constraintEnd_toEndOf="@+id/searchButton"
+        app:layout_constraintTop_toBottomOf="@+id/searchButton" />
+
+    <TextView
+        android:id="@+id/textView19"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="2dp"
+        android:layout_marginEnd="16dp"
+        android:text="Sort By:"
+        android:textSize="16sp"
+        app:layout_constraintEnd_toStartOf="@+id/spinnerOptions"
+        app:layout_constraintTop_toTopOf="@+id/spinnerOptions" />
+
+
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml
index 15325c0361c9d9c90d1dc39fb900c154d63b68f6..150d37c278078f395edb4814e23f5c2f81a5875e 100644
--- a/app/src/main/res/values-de-rDE/strings.xml
+++ b/app/src/main/res/values-de-rDE/strings.xml
@@ -30,6 +30,7 @@
     <string name="supplierFound">Zusteller existiert schon! Bitte loggen sie sich ein!</string>
     <string name="add">Hinzufügen</string>
     <string name="restamount_dp">Restmenge: </string>
+    <string name="restamount">Restmenge</string>
     <string name="supplier_dp">Lieferant: </string>
     <string name="buyamount_dp">Kaufmenge:</string>
     <string name="price_dp">Preis: </string>
@@ -64,4 +65,5 @@
     <string name="noemptyinput">Keine leere eingaben</string>
     <string name="item_already_exists">Item existiert bereits</string>
     <string name="added_to_shopping_cart">Zum Einkaufswagen hinzugefügt</string>
+    <string name="name">name</string>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 554da628067eebc0fa6d732563b94a67a402d031..082d0ec0292cd03fb1a266562ead30ab23a84a82 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -29,6 +29,7 @@
     <string name="supplierFound">Person not found! Please login!</string>
     <string name="add">add</string>
     <string name="restamount_dp">Restamount: </string>
+    <string name="restamount">Restamount</string>
     <string name="supplier_dp">Supplier: </string>
     <string name="buyamount_dp">Buyamount:</string>
     <string name="price_dp">Price: </string>
@@ -63,5 +64,5 @@
     <string name="noemptyinput">noEmptyInput</string>
     <string name="item_already_exists">Item already exists</string>
     <string name="added_to_shopping_cart">Added to Shopping Cart</string>
-
+    <string name="name">Name</string>
 </resources>
\ No newline at end of file