diff --git a/core/java/android/app/FragmentTransition.java b/core/java/android/app/FragmentTransition.java index 6d57cd438a6f2..80a5aacbd9dd2 100644 --- a/core/java/android/app/FragmentTransition.java +++ b/core/java/android/app/FragmentTransition.java @@ -188,7 +188,10 @@ class FragmentTransition { private static void configureTransitionsOptimized(FragmentManagerImpl fragmentManager, int containerId, FragmentContainerTransition fragments, View nonExistentView, ArrayMap nameOverrides) { - ViewGroup sceneRoot = (ViewGroup) fragmentManager.mContainer.onFindViewById(containerId); + ViewGroup sceneRoot = null; + if (fragmentManager.mContainer.onHasView()) { + sceneRoot = (ViewGroup) fragmentManager.mContainer.onFindViewById(containerId); + } if (sceneRoot == null) { return; } @@ -257,7 +260,10 @@ class FragmentTransition { private static void configureTransitionsUnoptimized(FragmentManagerImpl fragmentManager, int containerId, FragmentContainerTransition fragments, View nonExistentView, ArrayMap nameOverrides) { - ViewGroup sceneRoot = (ViewGroup) fragmentManager.mContainer.onFindViewById(containerId); + ViewGroup sceneRoot = null; + if (fragmentManager.mContainer.onHasView()) { + sceneRoot = (ViewGroup) fragmentManager.mContainer.onFindViewById(containerId); + } if (sceneRoot == null) { return; }