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

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


Ответы (1 шт):

Автор решения: Sergei Buvaka

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

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()
→ Ссылка