Activity-Activity
序列化
传值类型为对象、集合都需要序列化
data class Person(var name: String, var age:Int,) : Serializable {
}
页面传值-Activity1向Activity2传值
Activity1页面跳转时传值
openActivity(Activity2::class.java,Bundle().apply {
putSerializable("person", person)
putInt("valueInt", 123)
putString("valueString", "字符串")
})
Activity2页面创建前接收
@Param
lateinit var person: Person
@Param
var valueInt = 0
@Param
var valueString = ""
回退接收-Activity2回退到Activity1并向其传值
Activity2传值
LiveEventBus
.get("some_key")
.post(person)
Activity1接收
LiveEventBus
.get("some_key", Person::class.java)
.observe(this){
binding.etValue.setText(it.age.toString())}