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()
:
:
}
반응형
'Language > Kotlin' 카테고리의 다른 글
Kotlin 코드 문서화 'Dokka' 사용법 (1) | 2024.11.12 |
---|---|
Button Click시 Keyboard Hidden (2) | 2024.09.06 |