Language/Kotlin
BottomSheetDialogFragment에서 Fragment로 데이터 보내기
Y freesia
2024. 9. 6. 12:19
BottomSheetDialogFragment에서 Fragment로 데이터를 보낼때
- UserFragment
class UserFragment : Fragment() {
private lateinit var sharedViewModel: SharedViewModel
:
:
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
// ViewModel 초기화
sharedViewModel = ViewModelProvider(requireActivity()).get(SharedViewModel::class.java)
// ViewModel의 데이터를 관찰하여 UI 업데이트
sharedViewModel.sharedData.observe(viewLifecycleOwner, Observer { data ->
Log.d("myTag", "Received data: $data")
})
:
:
}
- BottomSheetDialogFragment
class ModalBottomSheet : BottomSheetDialogFragment() {
private lateinit var sharedViewModel: SharedViewModel
:
:
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
// ViewModel 초기화
sharedViewModel = ViewModelProvider(requireActivity()).get(SharedViewModel::class.java)
binding.btnClose.setOnClickListener{
// 데이터를 ViewModel에 설정
sharedViewModel.sharedData.value = "Send Data"
dismiss()
:
:
}
반응형