Android Fragment replace 사용시 중복 fragment 처리를 위해 사용

 

fun clearStack()
{
    val backStackEntry = supportFragmentManager.backStackEntryCount
    if (backStackEntry > 0) {
        for (i in 0 until backStackEntry) {
            supportFragmentManager.popBackStackImmediate()
        }
    }
    if (supportFragmentManager.fragments.size > 0) {
        supportFragmentManager.fragments.forEach {
            if (it != null) {
                supportFragmentManager.beginTransaction().remove(it).commit()
            }
        }
    }
}

 

아래와 같이 확장함수로 처리해도 됨. 현재 아래 코드를 사용중

fun FragmentManager.clearBackStack() {
    popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE)
}

 

'Development > Android' 카테고리의 다른 글

ViewPager2 set scroll Speed  (0) 2020.11.25
Android Tool bar change icon  (0) 2019.07.26
Android Studio 에서 JSON Kotlin Class 쉽게 만들기  (0) 2019.05.31
Kotlin Higher-Order Functions  (0) 2019.05.21
Android GPS Turn On  (0) 2019.02.21

+ Recent posts