added an argument to the ShoppinglistShoplistFragment navigation

This commit is contained in:
2024-06-04 00:21:12 +02:00
parent 47e1283ba2
commit acb211c219
5 changed files with 19 additions and 4 deletions

View File

@@ -4,6 +4,7 @@ import java.util.Properties
plugins { plugins {
id("com.android.application") id("com.android.application")
id("org.jetbrains.kotlin.android") id("org.jetbrains.kotlin.android")
id("androidx.navigation.safeargs")
} }
val mqttProperties = Properties() val mqttProperties = Properties()

View File

@@ -1,3 +1,3 @@
package de.chrissthecoder.store.dataclass package de.chrissthecoder.store.dataclass
data class ShoppinglistShoplistItem(val shoplabel: String, val iconID: Int, val shoppinglistCount: Int) data class ShoppinglistShoplistItem(val shopID: Int, val shoplabel: String, val iconID: Int, val shoppinglistCount: Int)

View File

@@ -11,6 +11,7 @@ import de.chrissthecoder.store.adapter.ShoppinglistShoplistAdapter
import de.chrissthecoder.store.databinding.FragmentShoppinglistShoplistBinding import de.chrissthecoder.store.databinding.FragmentShoppinglistShoplistBinding
import de.chrissthecoder.store.dataclass.ShoppinglistShoplistItem import de.chrissthecoder.store.dataclass.ShoppinglistShoplistItem
import de.chrissthecoder.store.interfaces.ShoppinglistShoplistItemClickListener import de.chrissthecoder.store.interfaces.ShoppinglistShoplistItemClickListener
import de.chrissthecoder.store.ui.dashboard.DashboardFragmentDirections
/** /**
* A [Fragment] subclass to list all shops that contains assigned shoppinglists. * A [Fragment] subclass to list all shops that contains assigned shoppinglists.
@@ -26,7 +27,7 @@ class ShoppinglistShoplistFragment : Fragment(), ShoppinglistShoplistItemClickLi
_binding = FragmentShoppinglistShoplistBinding.inflate(inflater, container, false) _binding = FragmentShoppinglistShoplistBinding.inflate(inflater, container, false)
val shoplist = ArrayList<ShoppinglistShoplistItem>() val shoplist = ArrayList<ShoppinglistShoplistItem>()
shoplist.add(ShoppinglistShoplistItem("Edeka", 0, 3)) shoplist.add(ShoppinglistShoplistItem(1,"Edeka", 0, 3))
val shoplistRecyclerView = binding.shoplist val shoplistRecyclerView = binding.shoplist
adapter = ShoppinglistShoplistAdapter(shoplist, this) adapter = ShoppinglistShoplistAdapter(shoplist, this)
@@ -36,6 +37,7 @@ class ShoppinglistShoplistFragment : Fragment(), ShoppinglistShoplistItemClickLi
} }
override fun onClick(shopitem: ShoppinglistShoplistItem) { override fun onClick(shopitem: ShoppinglistShoplistItem) {
findNavController().navigate(R.id.action_nav_dashboard_to_shoppinglistLists) val direction = DashboardFragmentDirections.actionNavDashboardToShoppinglistLists(shopitem.shopID)
findNavController().navigate(direction)
} }
} }

View File

@@ -31,5 +31,9 @@
android:id="@+id/shoppinglistLists" android:id="@+id/shoppinglistLists"
android:name="de.chrissthecoder.store.ui.dashboard.tabfragment.shoppinglist.ShoppinglistListsFragment" android:name="de.chrissthecoder.store.ui.dashboard.tabfragment.shoppinglist.ShoppinglistListsFragment"
android:label="@string/nav_shoppinglist" android:label="@string/nav_shoppinglist"
tools:layout="@layout/fragment_shoppinglist_lists" /> tools:layout="@layout/fragment_shoppinglist_lists" >
<argument
android:name="shopID"
app:argType="integer" />
</fragment>
</navigation> </navigation>

View File

@@ -1,4 +1,12 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules. // Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
dependencies {
val nav_version = "2.7.7"
classpath("androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version")
}
}
plugins { plugins {
id("com.android.application") version "8.3.0" apply false id("com.android.application") version "8.3.0" apply false
id("org.jetbrains.kotlin.android") version "1.9.22" apply false id("org.jetbrains.kotlin.android") version "1.9.22" apply false