title: Fragments RootViews AND/OR Databinding variable Leaking
body: <p>I am using BottomNavigationView and switching between between Fragments in onNavigationItemSelected because i want custom enter and exit animations.</p>
  
  <p>However my fragment root views AND/OR the databinding variables are leaking in the process.</p>
  
  <p>See below LeakCanary Analysis. The <code>clFeedFragmentRoot</code> is the root view of <code>FragmentMainFeed</code> and</p>
  
  <p><code>feedBinding</code> is <code>FragmentMainFeedBinding</code>.</p>
  
  <pre><code>├─ com.google.android.gms.ads.internal.zzq
  │    Leaking: NO (zzq↓ is not leaking and a class is never leaking)
  │    GC Root: System class
  │    ↓ static zzq.zzbmc
  ├─ com.google.android.gms.ads.internal.zzq
  │    Leaking: NO (zzpv↓ is not leaking)
  │    ↓ zzq.zzbmk
  ├─ com.google.android.gms.internal.ads.zzpv
  │    Leaking: NO (zzpy↓ is not leaking)
  │    ↓ zzpv.zzboy
  ├─ com.google.android.gms.internal.ads.zzpy
  │    Leaking: NO (MainActivity↓ is not leaking)
  │    ↓ zzpy.zzzr
  ├─ com.mypackage.ui.main.MainActivity
  │    Leaking: NO (NavHostController↓ is not leaking and Activity#mDestroyed is false)
  │    ↓ MainActivity.navController
  ├─ androidx.navigation.NavHostController
  │    Leaking: NO (NavHostFragment↓ is not leaking)
  │    ↓ NavHostController.mLifecycleOwner
  ├─ androidx.navigation.fragment.NavHostFragment
  │    Leaking: NO (FragmentManagerImpl↓ is not leaking and Fragment#mFragmentManager is not null)
  │    ↓ NavHostFragment.mChildFragmentManager
  ├─ androidx.fragment.app.FragmentManagerImpl
  │    Leaking: NO (HashMap↓ is not leaking)
  │    ↓ FragmentManagerImpl.mActive
  ├─ java.util.HashMap
  │    Leaking: NO (HashMap$HashMapEntry[]↓ is not leaking)
  │    ↓ HashMap.table
  ├─ java.util.HashMap$HashMapEntry[]
  │    Leaking: NO (HashMap$HashMapEntry↓ is not leaking)
  │    ↓ array HashMap$HashMapEntry[].[0]
  ├─ java.util.HashMap$HashMapEntry
  │    Leaking: NO (FragmentStateManager↓ is not leaking)
  │    ↓ HashMap$HashMapEntry.value
  ├─ androidx.fragment.app.FragmentStateManager
  │    Leaking: NO (FeedFragment↓ is not leaking)
  │    ↓ FragmentStateManager.mFragment
  ├─ com.mypackage.ui.main.feed.FeedFragment
  │    Leaking: NO (Fragment#mFragmentManager is not null)
  │    ↓ FeedFragment.feedBinding
  │                   ~~~~~~~~~~~
  ├─ com.mypackage.databinding.FragmentMainFeedBindingImpl
  │    Leaking: UNKNOWN
  │    ↓ FragmentMainFeedBindingImpl.clFeedFragmentRoot
  │                                  ~~~~~~~~~~~~~~~~~~
  ╰→ androidx.constraintlayout.widget.ConstraintLayout
       Leaking: YES (ObjectWatcher was watching this)
       mContext instance of com.mypackage.ui.main.MainActivity with mDestroyed = false
       View#mParent is null
       View#mAttachInfo is null (view detached)
       View.mWindowAttachCount = 1
       key = 991c9d5b-7065-4c88-9b79-74ad67f5f72d
       watchDurationMillis = 77959
       retainedDurationMillis = 72956
       retainedHeapByteSize=18132), ApplicationLeak(className=androidx.constraintlayout.widget.ConstraintLayout, leakTrace=
  </code></pre>
  
  <p>I need help in resolving the leak.
  Thanks</p>