diff --git a/app/app/src/main/java/tech/mercantec/easyeat/MainActivity.kt b/app/app/src/main/java/tech/mercantec/easyeat/MainActivity.kt index 928257d..7e14e3c 100644 --- a/app/app/src/main/java/tech/mercantec/easyeat/MainActivity.kt +++ b/app/app/src/main/java/tech/mercantec/easyeat/MainActivity.kt @@ -2,8 +2,6 @@ package tech.mercantec.easyeat import android.content.Intent import android.os.Bundle -import android.widget.ListView -import android.widget.Toast import com.google.android.material.bottomnavigation.BottomNavigationView import androidx.appcompat.app.AppCompatActivity import androidx.navigation.findNavController @@ -12,8 +10,6 @@ import androidx.navigation.ui.setupActionBarWithNavController import androidx.navigation.ui.setupWithNavController import com.google.android.material.floatingactionbutton.FloatingActionButton import tech.mercantec.easyeat.databinding.ActivityMainBinding -import tech.mercantec.easyeat.ui.home.DishAdapter -import tech.mercantec.easyeat.models.Dish class MainActivity : AppCompatActivity() { @@ -30,7 +26,7 @@ class MainActivity : AppCompatActivity() { val navController = findNavController(R.id.nav_host_fragment_activity_main) val appBarConfiguration = AppBarConfiguration( setOf( - R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications + R.id.navigation_dishes, R.id.navigation_shopping_list, R.id.navigation_notifications ) ) setupActionBarWithNavController(navController, appBarConfiguration) diff --git a/app/app/src/main/java/tech/mercantec/easyeat/ui/dashboard/DashboardFragment.kt b/app/app/src/main/java/tech/mercantec/easyeat/ui/dashboard/DashboardFragment.kt deleted file mode 100644 index 5a994a7..0000000 --- a/app/app/src/main/java/tech/mercantec/easyeat/ui/dashboard/DashboardFragment.kt +++ /dev/null @@ -1,42 +0,0 @@ -package tech.mercantec.easyeat.ui.dashboard - -import android.os.Bundle -import android.view.LayoutInflater -import android.view.View -import android.view.ViewGroup -import android.widget.TextView -import androidx.fragment.app.Fragment -import androidx.lifecycle.ViewModelProvider -import tech.mercantec.easyeat.databinding.FragmentDashboardBinding - -class DashboardFragment : Fragment() { - - private var _binding: FragmentDashboardBinding? = null - - // This property is only valid between onCreateView and - // onDestroyView. - private val binding get() = _binding!! - - override fun onCreateView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle? - ): View { - val dashboardViewModel = - ViewModelProvider(this).get(DashboardViewModel::class.java) - - _binding = FragmentDashboardBinding.inflate(inflater, container, false) - val root: View = binding.root - - val textView: TextView = binding.textDashboard - dashboardViewModel.text.observe(viewLifecycleOwner) { - textView.text = it - } - return root - } - - override fun onDestroyView() { - super.onDestroyView() - _binding = null - } -} \ No newline at end of file diff --git a/app/app/src/main/java/tech/mercantec/easyeat/ui/dashboard/DashboardViewModel.kt b/app/app/src/main/java/tech/mercantec/easyeat/ui/dashboard/DashboardViewModel.kt deleted file mode 100644 index 6bda48b..0000000 --- a/app/app/src/main/java/tech/mercantec/easyeat/ui/dashboard/DashboardViewModel.kt +++ /dev/null @@ -1,13 +0,0 @@ -package tech.mercantec.easyeat.ui.dashboard - -import androidx.lifecycle.LiveData -import androidx.lifecycle.MutableLiveData -import androidx.lifecycle.ViewModel - -class DashboardViewModel : ViewModel() { - - private val _text = MutableLiveData().apply { - value = "This is dashboard Fragment" - } - val text: LiveData = _text -} \ No newline at end of file diff --git a/app/app/src/main/java/tech/mercantec/easyeat/ui/home/DishAdapter.kt b/app/app/src/main/java/tech/mercantec/easyeat/ui/dishes/DishAdapter.kt similarity index 96% rename from app/app/src/main/java/tech/mercantec/easyeat/ui/home/DishAdapter.kt rename to app/app/src/main/java/tech/mercantec/easyeat/ui/dishes/DishAdapter.kt index 99e9c56..cde2497 100644 --- a/app/app/src/main/java/tech/mercantec/easyeat/ui/home/DishAdapter.kt +++ b/app/app/src/main/java/tech/mercantec/easyeat/ui/dishes/DishAdapter.kt @@ -1,4 +1,4 @@ -package tech.mercantec.easyeat.ui.home +package tech.mercantec.easyeat.ui.dishes import android.content.Context import android.view.LayoutInflater diff --git a/app/app/src/main/java/tech/mercantec/easyeat/ui/dishes/DishesFragment.kt b/app/app/src/main/java/tech/mercantec/easyeat/ui/dishes/DishesFragment.kt new file mode 100644 index 0000000..c54aeda --- /dev/null +++ b/app/app/src/main/java/tech/mercantec/easyeat/ui/dishes/DishesFragment.kt @@ -0,0 +1,57 @@ +package tech.mercantec.easyeat.ui.dishes + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.Toast +import androidx.fragment.app.Fragment +import tech.mercantec.easyeat.databinding.FragmentDishesBinding +import tech.mercantec.easyeat.models.Dish + +class DishesFragment : Fragment() { + + private var _binding: FragmentDishesBinding? = null + + // This property is only valid between onCreateView and + // onDestroyView. + private val binding get() = _binding!! + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View { + _binding = FragmentDishesBinding.inflate(inflater, container, false) + val root: View = binding.root + + context?.let { context -> + binding.dishesList.setOnItemClickListener { parent, view, position, id -> + val selectedItem = parent.getItemAtPosition(position) as Dish + Toast.makeText(context, "you selected $selectedItem.name that costs ${selectedItem.expense} kr.", Toast.LENGTH_LONG).show() + } + + val listItems = arrayOf( + Dish("Spaghetti Bolognese", "Beef", 70.5), + Dish("Margherita Pizza", "Cheese", 60.0), + Dish("Chicken Curry", "Chicken", 80.2), + Dish("Vegetable Stir Fry", "Mixed Vegetables", 50.5), + Dish("Sushi", "Fish", 100.0), + Dish("Beef Tacos", "Beef", 60.8), + Dish("Lentil Soup", "Lentils", 40.5), + Dish("Pasta Alfredo", "Cream", 60.9), + Dish("Caesar Salad", "Chicken", 50.8), + Dish("Falafel Wrap", "Chickpeas", 50.2) + ) + + binding.dishesList.adapter = DishAdapter(context, listItems) + } + + return root + } + + override fun onDestroyView() { + super.onDestroyView() + _binding = null + } +} \ No newline at end of file diff --git a/app/app/src/main/java/tech/mercantec/easyeat/ui/home/HomeViewModel.kt b/app/app/src/main/java/tech/mercantec/easyeat/ui/home/HomeViewModel.kt deleted file mode 100644 index 82f3c4f..0000000 --- a/app/app/src/main/java/tech/mercantec/easyeat/ui/home/HomeViewModel.kt +++ /dev/null @@ -1,13 +0,0 @@ -package tech.mercantec.easyeat.ui.home - -import androidx.lifecycle.LiveData -import androidx.lifecycle.MutableLiveData -import androidx.lifecycle.ViewModel - -class HomeViewModel : ViewModel() { - - private val _text = MutableLiveData().apply { - value = "This is home Fragment" - } - val text: LiveData = _text -} \ No newline at end of file diff --git a/app/app/src/main/java/tech/mercantec/easyeat/ui/home/HomeFragment.kt b/app/app/src/main/java/tech/mercantec/easyeat/ui/shopping_list/ShoppingListFragment.kt similarity index 50% rename from app/app/src/main/java/tech/mercantec/easyeat/ui/home/HomeFragment.kt rename to app/app/src/main/java/tech/mercantec/easyeat/ui/shopping_list/ShoppingListFragment.kt index 0cfcf3a..81b5d99 100644 --- a/app/app/src/main/java/tech/mercantec/easyeat/ui/home/HomeFragment.kt +++ b/app/app/src/main/java/tech/mercantec/easyeat/ui/shopping_list/ShoppingListFragment.kt @@ -1,17 +1,15 @@ -package tech.mercantec.easyeat.ui.home +package tech.mercantec.easyeat.ui.shopping_list import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.TextView import androidx.fragment.app.Fragment -import androidx.lifecycle.ViewModelProvider -import tech.mercantec.easyeat.databinding.FragmentHomeBinding +import tech.mercantec.easyeat.databinding.FragmentShoppingListBinding -class HomeFragment : Fragment() { +class ShoppingListFragment : Fragment() { - private var _binding: FragmentHomeBinding? = null + private var _binding: FragmentShoppingListBinding? = null // This property is only valid between onCreateView and // onDestroyView. @@ -22,16 +20,9 @@ class HomeFragment : Fragment() { container: ViewGroup?, savedInstanceState: Bundle? ): View { - val homeViewModel = - ViewModelProvider(this).get(HomeViewModel::class.java) - - _binding = FragmentHomeBinding.inflate(inflater, container, false) + _binding = FragmentShoppingListBinding.inflate(inflater, container, false) val root: View = binding.root - val textView: TextView = binding.textHome - homeViewModel.text.observe(viewLifecycleOwner) { - textView.text = it - } return root } diff --git a/app/app/src/main/res/drawable/ic_dashboard_black_24dp.xml b/app/app/src/main/res/drawable/ic_dashboard_black_24dp.xml deleted file mode 100644 index 46fc8de..0000000 --- a/app/app/src/main/res/drawable/ic_dashboard_black_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/app/src/main/res/drawable/ic_home_black_24dp.xml b/app/app/src/main/res/drawable/ic_home_black_24dp.xml deleted file mode 100644 index f8bb0b5..0000000 --- a/app/app/src/main/res/drawable/ic_home_black_24dp.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/app/src/main/res/drawable/ic_list_alt_black_24px.xml b/app/app/src/main/res/drawable/ic_list_alt_black_24px.xml new file mode 100644 index 0000000..ef5d22e --- /dev/null +++ b/app/app/src/main/res/drawable/ic_list_alt_black_24px.xml @@ -0,0 +1,11 @@ + + + diff --git a/app/app/src/main/res/drawable/ic_restaurant_black_24px.xml b/app/app/src/main/res/drawable/ic_restaurant_black_24px.xml new file mode 100644 index 0000000..393b7c9 --- /dev/null +++ b/app/app/src/main/res/drawable/ic_restaurant_black_24px.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/app/src/main/res/layout/activity_main.xml b/app/app/src/main/res/layout/activity_main.xml index dc46ef8..d524498 100644 --- a/app/app/src/main/res/layout/activity_main.xml +++ b/app/app/src/main/res/layout/activity_main.xml @@ -1,5 +1,6 @@ - + - - - - \ No newline at end of file diff --git a/app/app/src/main/res/layout/fragment_dishes.xml b/app/app/src/main/res/layout/fragment_dishes.xml new file mode 100644 index 0000000..7d6b6b4 --- /dev/null +++ b/app/app/src/main/res/layout/fragment_dishes.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/app/src/main/res/layout/fragment_home.xml b/app/app/src/main/res/layout/fragment_home.xml deleted file mode 100644 index f3d9b08..0000000 --- a/app/app/src/main/res/layout/fragment_home.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - \ No newline at end of file diff --git a/app/app/src/main/res/layout/fragment_shopping_list.xml b/app/app/src/main/res/layout/fragment_shopping_list.xml new file mode 100644 index 0000000..33133f0 --- /dev/null +++ b/app/app/src/main/res/layout/fragment_shopping_list.xml @@ -0,0 +1,9 @@ + + + + diff --git a/app/app/src/main/res/menu/bottom_nav_menu.xml b/app/app/src/main/res/menu/bottom_nav_menu.xml index 8525ec3..40d55c4 100644 --- a/app/app/src/main/res/menu/bottom_nav_menu.xml +++ b/app/app/src/main/res/menu/bottom_nav_menu.xml @@ -2,14 +2,14 @@ + android:id="@+id/navigation_shopping_list" + android:icon="@drawable/ic_list_alt_black_24px" + android:title="@string/title_shopping_list" /> + app:startDestination="@+id/navigation_dishes"> + tools:layout="@layout/fragment_dishes" /> + android:id="@+id/navigation_shopping_list" + android:name="tech.mercantec.easyeat.ui.shopping_list.ShoppingListFragment" + android:label="@string/title_shopping_list" + tools:layout="@layout/fragment_shopping_list" /> EasyEat MainActivity Your Dishes - Dashboard + Shopping list Notifications Welcome to EasyEat Login