I would like to refactor this section of code as you can see there's a lot of functions repeatly
override fun onNavigationItemSelected(menuItem: MenuItem): Boolean {
when (menuItem.itemId) {
R.id.home -> {
homeFragment = HomeFragment()
supportFragmentManager
.beginTransaction()
.replace(R.id.frame_layout, homeFragment)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.commit()
}
R.id.loanable -> {
loanableFragment = LoanableFragment()
supportFragmentManager
.beginTransaction()
.replace(R.id.frame_layout, loanableFragment)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.commit()
}
R.id.payable -> {
payableFragment = PayableFragment()
supportFragmentManager
.beginTransaction()
.replace(R.id.frame_layout, payableFragment)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.commit()
}
R.id.compare_rate -> {
compareRateFragment = CompareRateFragment()
supportFragmentManager
.beginTransaction()
.replace(R.id.frame_layout, compareRateFragment)
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.commit()
}
}
drawerLayout.closeDrawer(GravityCompat.START)
return true
}