Android Studio/kotlin

Fragment 에서 Fragment로 이동하기

kangchaewon 2023. 11. 11. 21:04

 

 

transaction.replace(R.id.넣을 위치 레이아웃, 이동할 Fragment)
transaction.addToBackStack(null)
transaction.commit()

 

이 3줄을 입력해주면 됩니다

 

예시1

 

fun goFragment(fragment : Fragment)  {
    var bundle : Bundle = Bundle()
    bundle.putString("fromFrag", "프래그먼트1")
    val transaction: FragmentTransaction = requireActivity().supportFragmentManager.beginTransaction()
    fragment.arguments = bundle
    transaction.replace(R.id.main_layout, fragment)
    transaction.addToBackStack(null)
    transaction.commit()
}

예시2

binding.diaryBtn.setOnClickListener { // 람다식 리스너 setOnclickListener{}
    var bundle : Bundle = Bundle()
    bundle.putString("fromFrag", "프래그먼트1")
    val transaction: FragmentTransaction = requireActivity().supportFragmentManager.beginTransaction()
    
    val myDiaryFragment: Fragment = MyWritingFragment() // 이동할 Fragment
    myDiaryFragment.arguments = bundle 
    transaction.replace(R.id.main_layout, myDiaryFragment)
    transaction.addToBackStack(null)
    transaction.commit()
}