fragment/src/main/java/androidx/fragment/app/FragmentTransition.java
private static void replaceHide(FragmentTransitionImpl impl,
            Object exitTransition, Fragment exitingFragment,
            final ArrayList<View> exitingViews) {
        if (exitingFragment != null && exitTransition != null && exitingFragment.mAdded
                && exitingFragment.mHidden && exitingFragment.mHiddenChanged) {
            exitingFragment.setHideReplaced(true);
            impl.scheduleHideFragmentView(exitTransition,
                    exitingFragment.getView(), exitingViews);
            final ViewGroup container = exitingFragment.mContainer;
            OneShotPreDrawListener.add(container, new Runnable() {
                @Override
                public void run() {
                    setViewVisibility(exitingViews, View.INVISIBLE);
                }
            });
        }
    }
/**
     * Replace hide operations with visibility changes on the exiting views. Instead of making
     * the entire fragment's view GONE, make each exiting view INVISIBLE. At the end of the
     * transition, make the fragment's view GONE.
     */
Replace hide operations with visibility changes on the exiting views. Instead of making
the entire fragment's view GONE, make each exiting view INVISIBLE. At the end of the
transition, make the fragment's view GONE.
Replace hide operations with visibility changes on the exiting views . Instead of making the entire fragment ' s view GONE make each exiting view INVISIBLE . At the end of the transition make the fragment ' s view GONE .
private static void replaceHide(FragmentTransitionImpl impl,
            Object exitTransition, Fragment exitingFragment,
            final ArrayList<View> exitingViews) {
        if (exitingFragment != null && exitTransition != null && exitingFragment.mAdded
                && exitingFragment.mHidden && exitingFragment.mHiddenChanged) {
            exitingFragment.setHideReplaced(true);
            impl.scheduleHideFragmentView(exitTransition,
                    exitingFragment.getView(), exitingViews);
            final ViewGroup container = exitingFragment.mContainer;
            OneShotPreDrawListener.add(container, new Runnable() {
                @Override
                public void run() {
                    setViewVisibility(exitingViews, View.INVISIBLE);
                }
            });
        }
    }
private static void replaceHide ( FragmentTransitionImpl impl , Object exitTransition , Fragment exitingFragment , final ArrayList < View > exitingViews ) { if ( exitingFragment != null && exitTransition != null && exitingFragment . mAdded && exitingFragment . mHidden && exitingFragment . mHiddenChanged ) { exitingFragment . setHideReplaced ( true ) ; impl . scheduleHideFragmentView ( exitTransition , exitingFragment . getView ( ) , exitingViews ) ; final ViewGroup container = exitingFragment . mContainer ; OneShotPreDrawListener . add ( container , new Runnable ( ) { @ Override public void run ( ) { setViewVisibility ( exitingViews , View . INVISIBLE ) ; } } ) ; } }
Replace hide operations with visibility changes on the exiting views.
Replace hide operations with visibility changes on the exiting views .