TransWikia.com

Kotlin передать в активити ArrayList

Stack Overflow на русском Asked on November 10, 2021

results=ArrayList<resultItem>()

мне нужно передать это в другое активити

val intent=Intent(this,resultActivity::class.java)
intent.putExtra("results",results)
startActivity(intent)

как в другом активити получить этот список? не нашел подходящего метода у интент
пробовал так:

var results=ArrayList<resultItem>()
if(intnt.hasExtra("results")){
    results=(ArrayList<resultItem>)intnt.getSerializableExtra("results")
    results=intnt.getParcelableArrayListExtra<resultItem>("results")
}

ошибка Type mismatch

One Answer

Попробуйте этот способ

val items = ArrayList<ResultItem>()
val intent = Intent(this, ResultActivity::class.java)
val args = Bundle()
args.putSerializable("ARRAYLIST",items as Serializable);
intent.putExtra("results", args);
startActivity(intent);

Во второй Activity:

val args = intent.getBundleExtra("BUNDLE") as ArrayList<ResultItem>

А еще лучше в объекте ResultItem реализовать интерфейс Parcellable и передать это все с помощью метода:

putParcelableArrayList()

Answered by Sergei Buvaka on November 10, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP