首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将mutableListOf<Int>() (包括2个参数)发送到另一个活动

将mutableListOf<Int>() (包括2个参数)发送到另一个活动
EN

Stack Overflow用户
提问于 2022-01-16 13:14:23
回答 2查看 48关注 0票数 0

我在活动A中有这样的代码:

代码语言:javascript
复制
private fun randomImage() {
        val number: Int = (1..4).random()
        if (!selectedImageList.contains(number)) selectedImageList.add(number)
        if (selectedImageList.size == 2) return
        else randomImage()
    }

并将此代码放在活动B中:

代码语言:javascript
复制
     private fun setImages(binding: ActivityP1Binding) {

        selectedImageList.forEachIndexed { index, number ->

            when (number) {
                1 -> {
                    if (index == 0) binding.a1.setImageResource(R.drawable.Omo1)
                    if (index == 1) binding.b1.setImageResource(R.drawable.Omo1)
                }
                2 -> {
                    if (index == 0) binding.a1.setImageResource(R.drawable.Omo2)
                    if (index == 1) binding.b1.setImageResource(R.drawable.Omo2)
                }
                3 -> {
                    if (index == 0) binding.a1.setImageResource(R.drawable.Omo3)
                    if (index == 1) binding.b1.setImageResource(R.drawable.Omo3)
                }
                4 -> {
                    if (index == 0) binding.a1.setImageResource(R.drawable.Omo4)
                    if (index == 1) binding.b1.setImageResource(R.drawable.Omo4)
                }

因此,需要代码从活动A发送selectedImageList (包括索引和编号)。以及活动B中要接收的代码。我用了一些代码来说明putParcelableArrayListExtra的意图,但它们不起作用。谢谢

EN

回答 2

Stack Overflow用户

发布于 2022-01-16 18:57:30

听起来你需要做的就是把一个整数数组从活动A发送到活动B。这可以用putExtra (https://developer.android.com/reference/kotlin/android/content/Intent#putextra_17)和getIntArrayExtra (https://developer.android.com/reference/kotlin/android/content/Intent#getintarrayextra)来完成。

请参见https://www.techiedelight.com/convert-list-to-array-kotlin/将列表转换为数组

票数 1
EN

Stack Overflow用户

发布于 2022-01-16 20:22:19

以这种方式尝试,它肯定会工作,所以在活动A中,添加以下代码

代码语言:javascript
复制
intent.putExtra("tag",ArrayList(selectedImageList))

在活动B中,

代码语言:javascript
复制
val my_List=intent.getStringArrayListExtra("tag") as ArrayList

您将在活动B中收到值的ArrayList。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70730365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档