Activity에서 fragment로 데이터를 전달할 때, 일반적으로 String인 경우에
putString으로 보낸다. 하지만, 보내야 하는 데이터가 많은 경우, 또는 List를 보내야 하는 경우에 하나하나 해줘야한다.
이러한 경우에는 객체로 보내면 된다.
putSerializable을 사용한다.
이 글에서는 예제로 Data Class를 전달해본다.
아래와 같이 DataClass를 생성할 때, Serializable을 상속받아 생성한다.
import com.capstone.traffic.model.network.sk.direction.dataClass.itineraries
data class Serial(val ser: List<itineraries>?) : java.io.Serializable
이후에 아래와 같은 형태로 Fragment에 전달해준다.
bundle.putSerializable("data", Serial(ser[2]))
받는 Fragment에서는 아래와 같이 해준다.
val data = bundle?.getSerializable("data") as Serial
'안드로이드 > KOTLIN' 카테고리의 다른 글
[Kotlin/Android] SharedPreferences Delegate (1) | 2024.02.20 |
---|---|
[Kotlin] - 버전에 따라 다르게 갤러리에 사진 저장하기 (0) | 2023.09.13 |
[Parcelize] intent에 Data class를 넣어서 전달하기 (0) | 2023.03.06 |
Retrofit @Get, @Query 인코딩 문제 해결방법 (0) | 2023.02.01 |
[Jitpack] 사용하기 (0) | 2023.01.17 |