切换Fragment

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/YANGWEIQIAO/article/details/79022334
private fun selectedFragment(position: Int) {
    val transaction = supportFragmentManager.beginTransaction()
    hideFragment(transaction)
    when (position) {
        0 -> if (homeFragment == null) {
            homeFragment = IndexFragment()
            transaction.add(R.id.fl_content, homeFragment)
        } else
            transaction.show(homeFragment)
        1 -> if (wishListFragment == null) {
            wishListFragment = WishListFragment()
            transaction.add(R.id.fl_content, wishListFragment)
        } else
            transaction.show(wishListFragment)
        2 -> if (cartFragment == null) {
            cartFragment = CartFragment()
            transaction.add(R.id.fl_content, cartFragment)
        } else
            transaction.show(cartFragment)
        3 -> if (meFragment == null) {
            meFragment = MeFragment()
            transaction.add(R.id.fl_content, meFragment)
        } else
            transaction.show(meFragment)
    }
    transaction.commit()
}

private fun hideFragment(transaction: FragmentTransaction) {
    if (homeFragment != null)
        transaction.hide(homeFragment)
    if (cartFragment != null)
        transaction.hide(cartFragment)
    if (wishListFragment != null)
        transaction.hide(wishListFragment)
    if (meFragment != null)
        transaction.hide(meFragment)


}

猜你喜欢

转载自blog.csdn.net/YANGWEIQIAO/article/details/79022334