好的,我在购物车 Activity 中有列表项(使用RecyclerView)。我的目的是根据 shop_id 分隔商品,以便用户在有相同shop_id的商品时可以处理一次付款。我已经用Google搜索过,并且已经阅读了使用getItemViewType的解决方案,但我不知道,因为就我而言,shop_id是动态的。

这是插图:

item A
item F
(here button process item A and F)

item D
(here button process item D)

item B
item E
item C
(here button process item B,E and C)

请帮助我,谢谢!

最佳答案

我有个例子给你。

    data class CartItem(
            var shopId : Int,
            var itemName : String
    )

    val list = listOf(CartItem(1,"Onion"),
            CartItem(1,"Potato"),
            CartItem(2,"Banana"),
            CartItem(2,"Apple"))

    val listOfDifferentShopIds = mutableListOf<List<CartItem>>()

    val getUniqueShopIds = list.distinctBy { it.shopId }.map { it.shopId }

    getUniqueShopIds.forEach{ uniqueShopID->
        listOfDifferentShopIds.add(list.filter{ uniqueShopID == it.shopId })
    }

    print(listOfDifferentShopIds)

结果
[[CartItem(shopId=1, itemName=Onion), CartItem(shopId=1, itemName=Potato)], [CartItem(shopId=2, itemName=Banana), CartItem(shopId=2, itemName=Apple)]]

希望这能解决您的问题。

关于android - 如何在Kotlin中使用RecyclerView按shop_id对商品推车进行分组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55521211/

10-10 18:14